TableDef Object, TableDefs Collection Example

This example creates a new TableDef object and appends it to the TableDefs collection of the Northwind Database object. It then enumerates the TableDefs collection and the Properties collection of the new TableDef.

Sub TableDefX()

   Dim dbsNorthwind As Database
   Dim tdfNew As TableDef
   Dim tdfLoop As TableDef
   Dim prpLoop As Property

   Set dbsNorthwind = OpenDatabase("Northwind.mdb")

   ' Create new TableDef object, append Field objects 
   ' to its Fields collection, and append TableDef 
   ' object to the TableDefs collection of the 
   ' Database object.
   Set tdfNew = dbsNorthwind.CreateTableDef("NewTableDef")
   tdfNew.Fields.Append tdfNew.CreateField("Date", dbDate)
   dbsNorthwind.TableDefs.Append tdfNew

   With dbsNorthwind
      Debug.Print .TableDefs.Count & _
         " TableDefs in " & .Name

      ' Enumerate TableDefs collection.
      For Each tdfLoop In .TableDefs
         Debug.Print "  " & tdfLoop.Name
      Next tdfLoop

      With tdfNew
         Debug.Print "Properties of " & .Name

         ' Enumerate Properties collection of new
         ' TableDef object, only printing properties
         ' with non-empty values.
         For Each prpLoop In .Properties
            Debug.Print "  " & prpLoop.Name & " - " & _
               IIf(prpLoop = "", "[empty]", prpLoop)
         Next prpLoop

      End With

      ' Delete new TableDef since this is a 
      ' demonstration.
      .TableDefs.Delete tdfNew.Name
      .Close
   End With

End Sub