VBA 将多值 Lisbox 中的值插入单独的 Table(运行-时间错误 3075)
VBA to Insert Values from Multi-Value Lisbox into Separate Table (Run-time error 3075)
这是我的第一个 post 希望能得到一些帮助。我做了很多研究,但无法确定我哪里出错了。我只是想遍历一个多值列表框并将值添加到单独的 table.
我有一些我认为应该有效的代码,但我一直收到 运行-Time error 3075 查询表达式“1b”中的语法错误(缺少运算符)。
这是我的情况:
我有一个 table: qaTbl
我在这个 table 中有两个字段。 interactionID 和缺陷(这是多值列表框)。两个字段都是短文本。
对于提交的每条记录,我想将 interactionID 和缺陷(无论是选择一个还是多个缺陷)放入一个名为 callDefectsTbl 的新 table 中。
callDefectsTbl中的两个字段是interactionID和defect。
我有一个带有提交按钮 (qaSubmit) 的表单。列表框的控件是 'defect'。
下面是与提交按钮的 Click() 事件关联的代码:
Private Sub qaSubmit_Click()
Dim db As DAO.Database
Dim strSQL As String
Dim varItem As Variant
Set db = CurrentDb
' Add each defect selected in the list box to callDefectsTbl
With Me.defect
For Each varItem In .ItemsSelected
strSQL = _
"INSERT INTO callDefectsTbl " & _
"(interactionID, defect) VALUES (" & _
Me.interactionID & ", " & .ItemData(varItem) & ")"
db.Execute strSQL
Next varItem
End With
DoCmd.GoToRecord , , acNewRec
End Sub
我得到一个运行-time error 3075。它似乎在抓取defect的值时停止了。我研究过其他做同样事情的代码,但我不明白我做错了什么。
任何帮助和详尽的解释将不胜感激!!
谢谢!!
如果短文本更改 sql 带有单引号
strSQL = _
"INSERT INTO callDefectsTbl " & _
“(interactionID, defect) VALUES ('” & _
Me.interactionID & "', '" & .ItemData(varItem) & "')"
这是我的第一个 post 希望能得到一些帮助。我做了很多研究,但无法确定我哪里出错了。我只是想遍历一个多值列表框并将值添加到单独的 table.
我有一些我认为应该有效的代码,但我一直收到 运行-Time error 3075 查询表达式“1b”中的语法错误(缺少运算符)。
这是我的情况:
我有一个 table: qaTbl
我在这个 table 中有两个字段。 interactionID 和缺陷(这是多值列表框)。两个字段都是短文本。
对于提交的每条记录,我想将 interactionID 和缺陷(无论是选择一个还是多个缺陷)放入一个名为 callDefectsTbl 的新 table 中。
callDefectsTbl中的两个字段是interactionID和defect。
我有一个带有提交按钮 (qaSubmit) 的表单。列表框的控件是 'defect'。
下面是与提交按钮的 Click() 事件关联的代码:
Private Sub qaSubmit_Click()
Dim db As DAO.Database
Dim strSQL As String
Dim varItem As Variant
Set db = CurrentDb
' Add each defect selected in the list box to callDefectsTbl
With Me.defect
For Each varItem In .ItemsSelected
strSQL = _
"INSERT INTO callDefectsTbl " & _
"(interactionID, defect) VALUES (" & _
Me.interactionID & ", " & .ItemData(varItem) & ")"
db.Execute strSQL
Next varItem
End With
DoCmd.GoToRecord , , acNewRec
End Sub
我得到一个运行-time error 3075。它似乎在抓取defect的值时停止了。我研究过其他做同样事情的代码,但我不明白我做错了什么。
任何帮助和详尽的解释将不胜感激!!
谢谢!!
如果短文本更改 sql 带有单引号
strSQL = _ "INSERT INTO callDefectsTbl " & _ “(interactionID, defect) VALUES ('” & _ Me.interactionID & "', '" & .ItemData(varItem) & "')"