【发布时间】:2018-07-13 16:02:44
【问题描述】:
我对在 MS Access 中编译 VBA 代码比较陌生。我正在尝试编译一个执行增量行更新的脚本,以便将行号添加到基础表中。
我目前的VBA脚本如下:
Function HOP_Macro()
On Error GoTo HOP_Macro_Err
Dim db As DAO.Database
Dim Tbl As DAO.Recordset
Dim sql As String
Dim Row_Counter As Integer
Dim Total_Row As Integer
Set db = CurrentDb
'Initialising Row Counter variable
Row_Counter = 1
DoCmd.SetWarnings False
' Query to extract initial loan population
'DoCmd.OpenQuery "Qry - HOP loan data by month", acViewNormal, acEdit
' Query to determine the population size
'DoCmd.OpenQuery "Qry - Row Counter", acViewNormal, acEdit
' Sets Total_Row variable to the population count
Total_Row = DLookup("[Row Count]", "[Tbl - Record Counter]")
'MsgBox ("Total Row: " & Total_Row)
'MsgBox ("Row Counter: " & Row_Counter)
sql = "SELECT [Tbl - HOP Loan Data].[Row ID] FROM [Tbl - HOP Loan Data];"
Set Tbl = db.OpenRecordset(sql, dbOpenDynaset)
'MsgBox ("SQL 1: " & sql)
With Tbl
Do Until Tbl.EOF
If Row_Counter <= Total_Row Then
'MsgBox ("Hello")
sql = "UPDATE [Tbl - HOP Loan Data.Row ID] = " & Row_Counter & _
" Where [Tbl - HOP Loan Data.Row ID] < " & Row_Counter & " ;"
'MsgBox ("SQL 2: " & sql)
db.Execute (sql)
Row_Counter = Row_Counter + 1
End If
.MoveNext
Loop
End With
MsgBox ("Row Counter: " & Row_Counter)
DoCmd.SetWarnings True
Beep
MsgBox "Data extract complete", vbInformation, "Completed"
End Function
运行上述脚本时,我收到“UPDATE 语句中的语法错误”消息。我找不到错误。有人可以帮忙吗?
谢谢
【问题讨论】: