我正在尝试在Access VBA中运行一些SQL命令,以使用从表单中的组合框获得的值更新列中的空白(空)字段。
此刻我正在收到
运行时错误‘3061’参数太少。预期1
但它似乎格式正确。
我正在使用的代码如下。用户将作为字符串传递,例如-“ Joe Bloggs”。
Public Sub testSub(user as string) Dim db as DAO.Database Dim sqlstr as String set db as CurrentDB sqlstr = "UPDATE tTable1 SET Field1 = [" & user & "] WHERE Field1 IS NULL;" db.Execute sqlstr End Sub
我认为您需要在用户'string'中使用单引号将其作为。另外,我一直使用set db = currentdb而不是使用as
'string'
set db = currentdb
as
Public Sub testSub(user as string) Dim db as DAO.Database Dim sqlstr as String set db = CurrentDB sqlstr = "UPDATE tTable1 SET Field1 = '" & user & "' WHERE Field1 IS NULL;" db.Execute sqlstr End Sub
编辑:正如@jarlh所提到的,我同意,我认为方括号不是必需的