You need to add another line to your code.
On Error GoTo ErrorHandler
I would also add another variable to your routine
Dim StrDescription as String
and try to assign the Description property to that variable for use in you
append query.
Also, I would add a test to eliminate system tables (they start with
"MSys"), but you may want them listed. Obviously, this is your choice.
If Instr(1,Tdf.Name,"MSYS") <> 1 then
' Do the work
End If
Public Sub EnumerateTables()
Dim db As DAO.Database
Dim tdf As TableDef
Dim fld As Field
On Error GoTo ErrorHandler
Set db = CurrentDb
DoCmd.SetWarnings False
For Each tdf In db.TableDefs
'Get the description and add quote marks around it
'and handle any description that has a quote mark in it
'by doubling the internal quotes.
strDescription = Chr(34) & _
Replace(tdf.Properties, Chr(34), Chr(34) & Chr(34)) & _
Chr(34)
'if that errors then the errhandler kicks in and assigns the string
"NULL"
DoCmd.RunSQL "INSERT INTO tblTableDefs" _
& "(tableName, TableDesc) " _
& "VALUES (" & tdf.Name & ", " & strDescription & ")"
Next tdf
DoCmd.SetWarnings True
Exit Sub
ErrorHandler:
Select Case Err.Number
Case 3270
strDescription = "Null"
Resume Next
Case Else
MsgBox Err.Number & ": " & Err.Description
Resume
End Select
End Sub

Signature
John Spencer
Access MVP 2002-2005, 2007
Center for Health Program Development and Management
University of Maryland Baltimore County
.
> Perhaps I have the syntax wrong, but I'm getting a Property doesn't exist
> error and NOTHING in my table. "Description" is what is highlighted when
[quoted text clipped - 119 lines]
>> >> >
>> >> > DoCmd.SetWarnings True