Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Access VBA中使用SQL时输入参数值_Sql_Vba_Ms Access_Sql Update - Fatal编程技术网

在Access VBA中使用SQL时输入参数值

在Access VBA中使用SQL时输入参数值,sql,vba,ms-access,sql-update,Sql,Vba,Ms Access,Sql Update,当我运行这段代码时,我一直得到一个“输入参数值”输入框 Private Sub UpdateTables() Dim strSQL As String strSQL = "update tblTest,ImportedTable set tblTest.Unit_Cost=ImportedTable.Unit_Cost where tblTest.Part_No=ImportedTable.Part_No" DoCmd.RunSQL strSQL End Sub 该框显示了tblTest.Un

当我运行这段代码时,我一直得到一个“输入参数值”输入框

Private Sub UpdateTables()
Dim strSQL As String
strSQL = "update tblTest,ImportedTable set tblTest.Unit_Cost=ImportedTable.Unit_Cost where tblTest.Part_No=ImportedTable.Part_No"
DoCmd.RunSQL strSQL
End Sub
该框显示了
tblTest.Unit\u Cost
导入表.Unit\u Cost
tbltTest.Part\u No
导入表.Part\u No

两个表,
tblTest
ImportedTable
存在并正确拼写
Unit\u Cost
Part\u No
在字段名中都有空格(我知道这很糟糕),因此在引用它们时使用了“\u”。我试着去掉空格并重新运行代码,但没有解决问题

有没有想过我做错了什么?
谢谢

在MS Access中,当字段包含空格时,必须将字段名括在括号中

Private Sub UpdateTables()
Dim strSQL As String
strSQL = "update tblTest,ImportedTable set tblTest.[Unit Cost]=ImportedTable.[Unit Cost] where tblTest.[Part No]=ImportedTable.[Part No]"
DoCmd.RunSQL strSQL
End Sub

在字段名周围使用带空格的
[]
,例如
ImportedTable.[Unit Cost]
非常欢迎您。请将此答案标记为已接受,以便其他人知道已提供解决方案。