调试运行时3061错误(帮助请求)访问VBA

时间:2013-12-04 17:40:24

标签: forms vba ms-access access-vba

好的我正在使用微软访问数据库,我需要一些帮助来查找某些特定表单的VBA代码中的问题。

下面是我遇到问题的VBA代码,并且我用粗线表示触发错误的行。我认为问题出在sql语句中。我得到运行时错误3061:预期的参数太少1

Dim rst As Recordset
Dim x As Integer
Dim y As String
y = Me.GLStringID
**Set rst = CurrentDb.OpenRecordset("SELECT COUNT(GLStringID) AS Total FROM LCDAList WHERE GLStringID='"y"';")**
x = rst!Total

如果有人能帮助我,我会非常感激。

1 个答案:

答案 0 :(得分:1)

你的“Y”周围的引号错了。删除双引号,以便语句

得到答案后,你已经改变了整个问题。请不要这样做 - 它使答案错了,回答的人看起来很愚蠢。

更改后,问题是您未正确连接(合并)查询和变量y。在VBA中,字符串连接运算符为&。这样的事情应该有效:

"SELECT COUNT(GLStringID) AS Total FROM LCDAList WHERE GLStringID = '" & y & "';"

所以你的代码行应该是:

Set rst = CurrentDb.OpenRecordset("SELECT COUNT(GLStringID) AS Total FROM LCDAList WHERE GLStringID = '" & y & "';")