我有一个我创建的表,它的目的是存放我多年来创建的查询数据库,我创建了一个相应的表单来插入所有信息,但是我无法使代码工作。
Private Sub cmd_go_Click()
Dim insertstring As String
insertstring = "INSERT INTO KWTable (KW, Source, Code) VALUES (" & text_key.Value & "," & combo_source.Value & "," & text_code.Text & ");"
DoCmd.RunSQL insertstring
End Sub
目标表上的三列是KW,Source和Code,插入它们的值是text_key(我输入的关键字,以便稍后当我需要引用某些内容时可以搜索它们),combo_source。值(这是一个组合框,其中包含保存这些代码和查询的数据库列表,我将在插入表时选择正确的一个)和text_code(这是查询的实际代码本身)
代码应该将关键字(文本)源(组合框列表)和代码(文本)插入KWTable。但是,当我单击添加记录按钮时,我得到一个“运行时错误424:对象必需”错误框,它突出显示整个插入字符串行。我无法解决错误的位置。有什么想法吗?
答案 0 :(得分:3)
正如Remou所说,你的文字没有引号。我在每个字段周围添加了一些单引号,并添加了一些换行符以便于阅读。这有用吗?
Private Sub cmd_go_Click()
Dim insertstring As String
insertstring = "INSERT INTO KWTable (KW, Source, Code) VALUES ('" & _
text_key.Value & "','" & _
combo_source.Value & "','" & _
text_code & "');"
DoCmd.RunSQL insertstring
End Sub
我认为这将处理在表格中存储单引号和双引号:
Private Sub cmd_go_Click()
Dim rst As recordset
Set rst = CurrentDb.OpenRecordset("KWTable ")
With rst
.addnew
.fields("KW")=text_key.Value
.fields("Source")=combo_source.Value
.fields("Code")=text_code
.update
End with
End sub