Excel VBA,我只能访问记录集的前三个字段[已关闭]

8xiog9wr  于 2023-01-03  发布在  其他
关注(0)|答案(1)|浏览(205)

**已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
3天前关闭。
Improve this question
我正在尝试用access数据库中的数据填充组合框。

Sub diesupdate()

Dim conn As ADODB.Connection
Dim myRecordset As ADODB.Recordset
Dim strConn As String
Dim strSQL As String
Dim strRst As String

strSQL = "SELECT * FROM dies"

strConn = "Provider=Microsoft.ACE.OLEDB.12.0;"
strConn = strConn & "Data Source =..\Database.accdb"

Set conn = New ADODB.Connection
conn.ConnectionString = strConn
conn.Open

Set myRecordset = New ADODB.Recordset

With myRecordset
.ActiveConnection = conn
.CursorLocation = adUseClient
.LockType = adLockBatchOptimistic
.CursorType = adOpenStatic
.Open strSQL, , , , adCmdText
End With

Set conn = Nothing

Sheet1.diesbox.Clear
i = 0
While Not myRecordset.EOF
Sheet1.diesbox.AddItem
Sheet1.diesbox.List(i, 0) = myRecordset.Fields(1).Value
Sheet1.diesbox.List(i, 1) = myRecordset.Fields(3).Value
myRecordset.MoveNext
i = i + 1
Wend

当我从myRecordset.Fields(1)到myRecordset.Fields(2)获取值时,它们返回正确的值。除了这些字段之外,我尝试获取的任何字段的结果都仅返回0。请帮助

fhg3lkii

fhg3lkii1#

说我笨吧。我刚刚意识到我没有在添加其他字段的数据后保存数据库。代码正在获取只填充了三个字段的数据库。上面的代码工作正常。

相关问题