我有一个主要的“决赛桌”,正在根据表单和其他表格数据的许多输入通过 VBA 进行更新。我正在尝试将表单中存在的 TextBox 对象值标注到 VBA 代码,以便用户可以向插入最终表格的所有数据添加注释。
Dim strComment As String
strComment = TextBox_Comment.Value
strSQL = "INSERT INTO Main_Table (Period, Monthp, Order, Comment)"
strSQL = strSQL & "SELECT ""Weekly"" AS Period, [001_SelectedMonth].Monthp, [001_OrderTable].Order, strComment AS Comment FROM 001_SelectedMonth, 001_OrderTable;"
CurrentDb.Execute strSQL, dbFailOnError
当我从主表插入点中删除“注释”和代码的“strComment AS 注释”部分时,代码工作正常。否则我会收到运行时错误“3061”,参数太少。预期 1。
问题:有没有办法让我标注要插入数据库的文本框值作为所有添加数据的字段数据,还是应该使用另一种方法来执行此操作?
决赛桌示例:
您需要一个空格和适当的串联:
strSQL = "INSERT INTO Main_Table ([Period], Monthp, [Order], [Comment]) "
strSQL = strSQL & "SELECT 'Weekly' AS [Period], [001_SelectedMonth].Monthp, [001_OrderTable].Order, '" & strComment & "' AS [Comment] FROM 001_SelectedMonth, 001_OrderTable;"
也就是说,使用参数来避免串联。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句