我一直在努力讓這段代碼工作幾天。如果你能提供任何解決方案,我會非常感激。使用VBA更新表格
Private Sub Command0_Click()
If IsNull(NewSupBox.Value) Or IsNull(NewNumberBox.Value) Then
MsgBox ("All fields must be filled")
GoTo ErrorExit
End If
If Not IsNull(DLookup("SupplierNumber", "SupGenInfo ", "SupGenInfo.SupplierNumber =" & NewSupBox)) = Then
MsgBox ("This supplier number already exists. You can edit the current record on the Edit supplier page.")
GoTo ErrorExit
End If
Dim db As Database
Dim rec As Recordset
Set db = CurrentDb
Set rec = db.OpenRecordset("select * from SupGenInfo")
rec.AddNew
rec("SupplierNumber") = Me.NewSupBox.Value
rec("SupplierName") = Me.NewNameBox.Value
rec.Update
Set rec = Nothing
Set db = Nothing
MsgBox "Records added successfully."
ErrorExit:
End Sub
編輯:忘了提,我沒有收到任何錯誤消息。該命令不會爲我的表添加新記錄。
編輯2:當我刪除下面的代碼塊時,上面的代碼將輸出味精「記錄添加成功」。
Dim db As Database
Dim rec As Recordset
Set db = CurrentDb
Set rec = db.OpenRecordset("SupGenInfo")
rec.AddNew
rec("SupplierNumber") = Me.NewSupBox
rec("SupplierName") = Me.NewNameBox
rec.Update
Set rec = Nothing
Set db = Nothing
這是包含此代碼時,我的命令點擊變得無法響應。
它有什麼問題? – JNevill 2014-10-10 16:18:07
當我單擊命令時,什麼也沒有發生。我的表不受影響,也沒有錯誤消息。我有一個類似的代碼來運行在我的數據庫中的一個完全正常的表單上。 – 2014-10-10 16:24:17
你把它標記爲VBA?什麼應用程序使用此代碼? 「CurrentDb」又來自哪裏?你正在嘗試使用/使用** ADODB **還是別的東西?請澄清您的問題並添加相關標籤。 – L42 2014-10-11 03:14:01