Private Sub update ()
Dim db As Database
Set db = CurrentDb
Dim rs As Recordset
Set rs = db.OpenRecordset("SELECT * From Table", dbOpenDynaset, dbSeeChanges)
db.Execute ("UPDATE Table SET Path = '" & A.Value & "' WHERE B = '" & B.Value & "'")
db.Close
End Sub
Run Code Online (Sandbox Code Playgroud)
当我获得vba访问错误3622(即访问具有IDENTITY列的SQL Server表时使用带有OpenRecordset的dbSeeChanges选项)建议的解决方案是添加第一行(设置rs = ...参见上面的编码)我做了,但它没有解决问题.还有另一种方法可以避免这种错误吗?
我是编码新手,对此有所帮助.谢谢.
由于 OP 已消失 - 将dbSeeChanges添加到命令末尾 (VBA):
DBEngine(0)(0).Execute "UPDATE Table SET Path = '" & A.Value & "' WHERE B = '" & B.Value & "'", dbSeeChanges
Run Code Online (Sandbox Code Playgroud)