为什么我的AccessSQLVBA代码会跳出Sub?

Why does my Access SQL VBA code jump out of the Sub?

我的代码在 "CurrentDb.Execute strSQL_Insert_Data" 行退出子程序。你知道为什么会这样吗?

  Local_Array = Array("dbo_Tape_Capture_Local_tbl", "dbo_Tape_Local_tbl", "dbo_Tape_Memo_Local_tbl")
  Server_Array = Array("dbo_Tape_Capture", "dbo_Tape", "dbo_Tape_Memo")

For i = 0 To UBound(Local_Array)
    strSQL_Insert_Data = "INSERT INTO [" & Local_Array(i) & "] " & _
                         "SELECT [" & Server_Array(i) & "].* " & _
                         "WHERE (LEFT([" & Server_Array(i) & "].header__situs_loan_id," & _
                          Len([Forms]![Login Page]![CBO_Job_Select_Login]) & ") = " & _
                         "[Forms]![Login Page]![CBO_Job_Select_Login]);"

CurrentDb.Execute strSQL_Insert_Data

CurrentDb.Close

Next i

--添加打印出来的代码--

INSERT INTO [dbo_Tape_Capture_Local_tbl] SELECT [dbo_Tape_Capture].*
WHERE (LEFT([dbo_Tape_Capture].header__situs_loan_id,14) = [Forms]![Login Page]![CBO_Job_Select_Login]);

您的查询中缺少 FROM TableName。将 TableName 替换为实际 Table 名称

strSQL_Insert_Data = "INSERT INTO [" & Local_Array(i) & "] " & _
                     "SELECT [" & Server_Array(i) & "].* " & _
                     "FROM [" & Server_Array(i) & "] " & _
                     "WHERE (LEFT([" & Server_Array(i) & "].header__situs_loan_id," & _
                      Len([Forms]![Login Page]![CBO_Job_Select_Login]) & ") = " & _
                     "[Forms]![Login Page]![CBO_Job_Select_Login]);"