【问题标题】:Runtime Error 3061 Too Few Parameters Expected 1运行时错误 3061 预期的参数太少 1
【发布时间】:2017-04-28 18:23:59
【问题描述】:

我是 Access 新手。我已经制作了一个表格来将数据放入表格中。 我在用户表单中有一个组合框和一个文本框。

下面是我的代码:

Private Sub add_Click()
'Add Data to the GroupHeads Table
CurrentDb.Execute "Insert into GroupHeads(AccountHeads, GroupHeads)" & "  Values(" & Me.cboaccounthead & ", '" & Me.txtgrouphead & "')"

End Sub

请查看并告知为什么它会出现运行时错误。

问候。 萨尔曼

【问题讨论】:

  • 这种情况经常发生,因为您的列名错误。确认表中的列与您要插入的列的名称相匹配。您还可以确认AccountHeads 列是数字数据类型吗?最后注意 Me.cboaccounthead 包含引号字符,因为这会破坏 insert 语句 - 您可能需要将 Me.cboaccounthead 包装在 Replace 函数中。
  • 列名正确... AccountHeads 和 GroupHeads 被定义为 ShortText。我将如何使用替换功能替换组合框文本..

标签: ms-access vba


【解决方案1】:

如果表格中的两列都是文本,那么两个值都需要用单引号括起来,所以你需要:

CurrentDb.Execute "Insert into GroupHeads(AccountHeads, GroupHeads) " & _
    "Values('" & Replace(Me.cboaccounthead, "'", "''") & "', " & _
    "'" & Replace(Me.txtgrouphead, "'", "''") & "')"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-31
    • 2014-04-06
    相关资源
    最近更新 更多