因此,我尝试从表中获取数据,将数据片段设置为变量,然后将该变量添加到新表中。 这是访问我要搜索的人的姓氏的代码。我几乎100%确信这部分有效。
Dim db As Database
Dim Lrs As DAO.Recordset
Dim LSQL As String
Set db = CurrentDb()
Set Lrs = db.OpenRecordset("Select [LastName]" & _
"From ['Chromebook Registration Form]" & _
"Where [InventoryNumber] = 1")
dbLastName = Lrs("LastName")
在调试模式下,它显示变量“ dbLastName”包含我想要的字符串。
但是,当我运行以下代码(将信息添加到新表中)时,出现3061运行时错误代码。参数太少:预期1。 调试器说问题出在最后一行。我认为这是“ dbLastName”的问题。时间戳记工作正常。
CurrentDb.Execute " INSERT INTO TempReg " _
& "([Timestamp], LName, FName, Grade, InventoryNumber, SerialNumber, MacAddress, PaidIn, CheckNum) VALUES " _
& "(Now, dbLastName, 'test', 'test', 'test', 'test', 'test', 'test', 'test');"
谢谢!
答案 0 :(得分:0)
您不能只将字符串变量嵌入SQL。代替
(Now, dbLastName, 'test ...
您需要
(Now(), '" & dbLastName & "', 'test' …
此外,您需要确保变量永远不会包含单引号字符,否则您还必须通过将其加倍来将其考虑在内。