【发布时间】:2020-07-03 16:12:38
【问题描述】:
我在针对从 SQLServer 链接的表打开记录集时遇到问题。我正在运行以下 VBA 并收到“无效操作”错误。 感谢您的帮助。
Private Sub Add_Click()
On Error GoTo Err_Add_Click
Dim myRS As DAO.Recordset
Dim myDB As DAO.Database
Dim myI As Variant, myPO As Variant, myJ As Variant
Dim myWS As Workspace
Set myWS = DBEngine(0)
Set myDB = CurrentDb
Set myRS = myDB.OpenRecordset("PO_Numbers_tbl", dbOpenTable)
myI = Me![End] - Me![Start] + 1
myPO = Me![Start]
For myJ = 1 To myI
myRS.AddNew
myRS![PO_Number] = myPO
myRS.Update
myPO = myPO + 1
Next myJ
myRS.Close
myDB.Close
Me.Requery
Exit_Add_Click:
Exit Sub
Err_Add_Click:
MsgBox Err.DESCRIPTION
Resume Exit_Add_Click
End Sub
【问题讨论】:
-
哪一行触发错误?单步调试代码和/或禁用错误处理程序以进行调试。
-
Access 中有这个 VBA 吗?由于您只是引用表,因此实际上不涉及 SQL。
-
Access是前端,SQLServer是后端?
-
为什么要声明和设置工作区对象然后不使用它?
-
为什么要将
myJ、myI和myPO声明为变体?这些应该是数字,可能很长。