我有一個表單,我必須遍歷串列框中的選定專案并將這些 ID 添加到資料庫中。發生的事情是它回圈 x 倍于我選擇的專案數,但它只添加串列框中第一項的 ID 號,而不管我選擇了哪些其他專案(并且第一項未選擇。我的代碼是以下:
' Loop through each selected item and add that to the Eng_Topic lookup table
For Each varItem In Me.Res_Topic_ID.ItemsSelected
StrSQL = "INSERT INTO Eng_Topic (Eng_ID, Res_Topic_ID) VALUES (" & lastID & ", " & Me.Res_Topic_ID.ItemData(varItm) & ")"
DoCmd.RunSQL StrSQL
Debug.Print StrSQL
Next varItem
End Sub
任何幫助都是值得的。
uj5u.com熱心網友回復:
放在Option Explicit每個模塊的頂部。
它強制執行變數宣告并在編譯時報告未宣告或拼寫錯誤的變數/常量。
要在新模塊中自動執行此操作,請在 VBA 編輯器中設定Require Variable Declaration選項。
這確實是VBA開發的必備。
然后它會告訴你varItminMe.Res_Topic_ID.ItemData(varItm)是未宣告的——因為它應該是varItem.
這就是為什么您總是從串列框中獲取第一項。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/514544.html
標籤:vba毫秒访问
