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

时间:2013-04-03 14:39:17

标签: 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.Unit_CostImportedTable.Unit_CosttbltTest.Part_NoImportedTable.Part_No

这两个表tblTestImportedTable存在且拼写正确。 Unit_CostPart_No在字段名称中都有空格(我知道这很糟糕)因此引用它们时会出现'_'。我尝试占用空间并重新运行代码,但这并没有解决它。

有关我正在做错的事情的任何想法? 谢谢!

1 个答案:

答案 0 :(得分:3)

在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