访问 VBA 以设置字段位置
Access VBA to Set Field Location
我想使用 Alter Table
语句向 table 添加一些字段。我想在添加字段时控制字段的位置。我尝试了下面的语法,它会添加字段,但它没有添加到位置 2,而是添加到 table.
中的最后一个位置
如何更改以控制要添加的字段的位置?
Set td = db.TableDefs("InformationSeminar")
With td
.Fields.Append .CreateField("FirstName", dbText, 50)
.Fields![FirstName].OrdinalPosition = 2
.Fields.Refresh
End With
在特定位置添加一列时,您还需要将位置相同或更高的所有其他列向上移动一个位置,以释放要插入的位置
Set td = db.TableDefs("InformationSeminar")
Dim fld As Field
For Each fld In td.Fields
With fld
If .OrdinalPosition >= 2 Then
.OrdinalPosition = .OrdinalPosition + 1
End If
End With
Next fld
With td
.Fields.Append .CreateField("FirstName", dbText, 50)
.Fields![FirstName].OrdinalPosition = 2
.Fields.Refresh
End With
我想使用 Alter Table
语句向 table 添加一些字段。我想在添加字段时控制字段的位置。我尝试了下面的语法,它会添加字段,但它没有添加到位置 2,而是添加到 table.
如何更改以控制要添加的字段的位置?
Set td = db.TableDefs("InformationSeminar")
With td
.Fields.Append .CreateField("FirstName", dbText, 50)
.Fields![FirstName].OrdinalPosition = 2
.Fields.Refresh
End With
在特定位置添加一列时,您还需要将位置相同或更高的所有其他列向上移动一个位置,以释放要插入的位置
Set td = db.TableDefs("InformationSeminar")
Dim fld As Field
For Each fld In td.Fields
With fld
If .OrdinalPosition >= 2 Then
.OrdinalPosition = .OrdinalPosition + 1
End If
End With
Next fld
With td
.Fields.Append .CreateField("FirstName", dbText, 50)
.Fields![FirstName].OrdinalPosition = 2
.Fields.Refresh
End With