[AccessD] Cycle thru All Tables in DB

Boyd, Mark Thomas (US - Philadelphia) mboyd at deloitte.com
Tue Nov 29 13:11:49 CST 2005


After playing with the code, I came up with the following, which does
exactly what I needed.
 
Public Sub CycleThruTables()
    Dim td As TableDef
    Dim fld As Field
    Dim i As Integer
 
    For Each td In CurrentDb.TableDefs
        If Left(td.Name, 4) <> "MSys" Then 'not a system table
            i = 0
            For Each fld In td.Fields
                Set fld = td.Fields(i)
                DoCmd.RunSQL ("UPDATE [" & td.Name & "] SET [" &
fld.Name & "] = Null WHERE [" & fld.Name & "] = ''")
                i = i + 1
            Next
        End If
    Next
    
    Set td = Nothing
    Set fld = Nothing
End Sub

 
Mark Boyd 
Senior Consultant 
Enterprise Risk Services 
Deloitte & Touche LLP 
  
Tel: +1 215 405 5576
mboyd at deloitte.com 
www.deloitte.com <http://www.deloitte.com/>  
 

________________________________

From: Boyd, Mark Thomas (US - Philadelphia) 
Sent: Tuesday, November 29, 2005 1:02 PM
To: 'Access Developers discussion and problem solving'
Subject: Cycle thru All Tables in DB


I'm sure this is possible, but have never coded it.
I have 50 tables, each containing 50 fields.  Some of the fields contain
empty strings.  I need to cycle thru every table, and update all empty
strings to null.
 
Is there a way to cycle thru each table, and cycle thru each field
record by record, and update to null where necessary?
I want to avoid using specific table and field names.
 
Any ideas?
Thanks.
 
Mark Boyd 
Senior Consultant 
Enterprise Risk Services 
Deloitte & Touche LLP 
  
Tel: +1 215 405 5576
mboyd at deloitte.com 
www.deloitte.com <http://www.deloitte.com/> 


This message (including any attachments) contains confidential information intended for a specific individual and purpose, and is protected by law.  If you are not the intended recipient, you should delete this message. 


Any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited. [v.E.1]



More information about the AccessD mailing list