Справка Access'а говорит следующее:
Следующая программа использует метод CreateField для создания трех объектов Field в новом объекте TableDef. Далее отображаются свойства объектов Field, которые автоматически задаются в методе CreateField. (Свойства, значения которых остаются пустыми при создании объектов Field, не отображаются).
Sub CreateFieldX()
Dim dbsNorthwind As Database
Dim tdfNew As TableDef
Dim fldLoop As Field
Dim prpLoop As Property
Set dbsNorthwind = OpenDatabase("Борей.mdb"
Set tdfNew = dbsNorthwind.CreateTableDef("NewTableDef"
' Создает и добавляет новый объект Field
' в новый объект TableDef.
With tdfNew
' Метод CreateField задает стандартный размер для нового
' объекта Field, если размер не указан.
.Fields.Append .CreateField("ТекстовоеПоле", dbText)
.Fields.Append .CreateField("ЦелоеПоле", dbInteger)
.Fields.Append .CreateField("ПолеДаты", dbDate)
End With
dbsNorthwind.TableDefs.Append tdfNew
Debug.Print "Свойства новых полей в " & tdfNew.Name
' Отображает семейство Fields, чтобы показать свойства
' новых объектов Field.
For Each fldLoop In tdfNew.Fields
Debug.Print " " & fldLoop.Name
For Each prpLoop In fldLoop.Properties
' Свойства, недопустимые в контексте семейства
' TableDefs вызовут ошибку при попытке
' прочитать их значения.
On Error Resume Next
Debug.Print " " & prpLoop.Name & " - " & _
IIf(prpLoop = "", "[empty]", prpLoop)
On Error GoTo 0
Next prpLoop
Next fldLoop
' Удаляет объект TableDef, созданный только для демонстрации.
dbsNorthwind.TableDefs.Delete tdfNew.Name
dbsNorthwind.Close
End Sub
Ответить
|