任何帮助将不胜感激。我试图让这个代码工作。我需要获取临时表的字段名称,并检查它们是否存在使用另一个永久表。我的问题是,逮捕变量,我在哪里实际放在字段名称来检查。 ?如果我不打算添加字段名称,代码会为我执行吗?我该如何调用函数才能做到这一点。该函数接受和参数称为strfield和什么令我困惑的是get名称变量是arrStrings。他们不应该匹配吗?VBA-获取字段名称并检查它们是否存在临时表中
Sub Example()
Dim objRecordset As ADODB.Recordset
Dim arrStrings(1 To 100) As String
Dim intIndex As Integer
Dim i As Integer
Set objRecordset = New ADODB.Recordset
objRecordset.ActiveConnection = CurrentProject.Connection
objRecordset.Open ("MyTable1")
intIndex = 1
'loop through table fields
For i = 0 To objRecordset.Fields.Count - 1
arrStrings(intIndex) = objRecordset.Fields.Item(i).Name
intIndex = intIndex + 1
Next i
End Sub
' this is the function that checks the exists
Function CheckExists(ByVal strField As String) As Boolean
Dim objRecordset As ADODB.Recordset
Dim i As Integer
Set objRecordset = New ADODB.Recordset
objRecordset.ActiveConnection = CurrentProject.Connection
objRecordset.Open ("MyTable2")
'loop through table fields
For i = 0 To objRecordset.Fields.Count - 1
'check for a match
If strField = objRecordset.Fields.Item(i).Name Then
'exit function and return true
CheckExists = True
Exit Function
End If
Next i
'return false
CheckExists = False
End Function
哪里代码?而且这两个查询似乎都使用了同一张表?两种方法之间似乎存在“额外”的代码 - 是真的还是错误的? –
我编辑它,并将函数中的表格更改为mytable2。第二部分是功能检查哦,我看到它我会删除。 TY! –