VBA ACCESS - ERROR 2465

时间:2017-02-06 05:41:05

标签: vba ms-access

我试图将这些特定值放到表中并遇到问题。

代码:

CurrentDb.Execute "INSERT INTO FollowUpsDataBase(ER NUMBER, SUBJECT, FORWARDED TO, CASEHANDLER, [DUE DATE])" & " VALUES('" & [Me.cmdErNumber] & "','" & Me.cmdSubject & "','" & [Me.cboForwardedTo] & "','" & [Me.cboCasehandler] & "','" & [Me.cmdDueDate] & "')"

有人能指出我正确的方向,为什么这不起作用?

3 个答案:

答案 0 :(得分:0)

表单变量不需要方括号:

CurrentDb.Execute "INSERT INTO FollowUpsDataBase([ER NUMBER], SUBJECT, [FORWARDED TO], CASEHANDLER, [DUE DATE])" & _
" VALUES('" & Me.cmdErNumber & "','" & Me.cmdSubject & "','" & Me.cboForwardedTo & "','" & Me.cboCasehandler & "','" & Me.cmdDueDate & "')"

根据ClintB的回答,在SQL中缺少方括号

答案 1 :(得分:0)

如果字段名称中有空格,则需要使用[方括号]

CurrentDb.Execute "INSERT INTO FollowUpsDataBase([ER NUMBER], SUBJECT, [FORWARDED TO], CASEHANDLER, [DUE DATE])" & " VALUES('" & Me.cmdErNumber & "','" & Me.cmdSubject & "','" & Me.cboForwardedTo & "','" & Me.cboCasehandler & "','" & Me.cmdDueDate & "')"

如果仍无法正常工作,则需要发布错误消息。

另外,根据Sergey S的上述评论,你的表格控件周围有一些方括号。

答案 2 :(得分:0)

您还需要正确包装日期值的字符串表达式 - 如果ER NUMBER确实是数字,则不需要引号:

CurrentDb.Execute _
"INSERT INTO FollowUpsDataBase([ER NUMBER], SUBJECT, [FORWARDED TO], CASEHANDLER, [DUE DATE]) " & _
"VALUES(" & Me!cmdErNumber.Value & ",'" & Me!cmdSubject.Value & "','" & Me!cboForwardedTo.Value & "','" & Me!cboCasehandler.Value & "',#" & Format(Me!cmdDueDate.Value, "yyyy\/mm\/dd") & "#)"