Я создал следующий код, который я хочу использовать в будущем, чтобы получить список всех полей в таблице:возвращающие полей объекта - Access 2007 VBA
Private Sub btnGetFields_Click()
Dim myDBS As Database
Dim fldLoop As Fields
Dim fld As Field
Dim relLoop As Relation
Dim tdfloop As TableDef
Set myDBS = CurrentDb
With myDBS
' Display the attributes of a TableDef object's
' fields.
Debug.Print "Attributes of fields in " & _
.TableDefs("ALT_IDENTIFIER").Name & " table:"
'Error occurs in line below
Set fldLoop = .TableDefs("ALT_IDENTIFIER").Fields
For Each fld In fldLoop
Debug.Print " " & fld.Name & " = " & _
fld.Attributes
Next fld
.Close
End With
End Sub
Но я получаю a Type Mistmatch - Runtime Error 13
назад, когда я запускаю код.
Почему? fldloop
- объект Fields - т. Е. Набор объектов поля справа? это то, что возвращает процедура TableDefs.Fields, так почему я получаю эту ошибку?
Благодаря
'Поля' - это не объект, это коллекция. –
Я сказал, что коллекция - это в основном 1 или более объектов, размещенных под другим – Katana24
. Ваши коды работают для меня, включая связанные таблицы. –