简体   繁体   English

记录集参数太少,无法从MS Access 2007中提取查询

[英]Too Few Parameters with Recordset pulling query from MS Access 2007

I have a query (Qoff2) set up in MS ACCESS 2007 that looks like this: 我在MS ACCESS 2007中设置了一个查询(Qoff2),如下所示:

SELECT off.FNAM, inc.RECEIVED_DT,
inc.FILENUM
FROM (INC LEFT JOIN AIO ON INC.INCNUM = AIO.INCNUM) LEFT JOIN OFF ON AIO.OFFNUM = off.OFFNUM 
WHERE ((inc.ID)=[forms]![form].[text10]));

And I have a module that has this code to grab the query from MS Access. 我有一个具有此代码的模块,可以从MS Access获取查询。

Public Sub OpenRecordset()

Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("QOff2")


Dim db As Database
Dim rs As Recordset
Dim StrBusinesses As String

Set rs = qdf.OpenRecordset
If rs.EOF And rs.BOF Then
MsgBox ("No businesses exist for this Customer")
Exit Sub
Else
rs.MoveFirst
End If
StrBusinesses = ""
Do While Not rs.EOF
StrBusinesses = StrBusinesses & rs!Fnam & ", "
rs.MoveNext
Loop

rs.Close
StrBusinesses = Left(StrBusinesses, Len(StrBusinesses) - 2)
Forms!Form.Test = StrBusinesses
Set rs = Nothing

End Sub

What I want is for the recordset to do a lookup, and compare [forms]![form].[text10] to Qoff2.filenum, then list all the related fnam's into [forms]![form].test, but for some reason I can't get it to work. 我想要的是对记录集进行查找,然后将[forms]![form]。[text10]与Qoff2.filenum进行比较,然后将所有相关的fnam列出到[forms]![form] .test中,但需要一些我无法正常工作的原因。 I get a too few paramaters error expected 1 error. 我得到的参数错误太少,预期会有1个错误。 It works just fine when I run the query inside access and have the form open. 当我在access中运行查询并打开表单时,它的工作原理很好。 I get an error of too few parameters when I run the module in vba and it highlights Set rs = qdf.OpenRecordset. 在vba中运行模块时,出现参数太少的错误,并突出显示Set rs = qdf.OpenRecordset。

You need to specify the parameter: 您需要指定参数:

Set qdf = CurrentDb.QueryDefs("QOff2")
qdf.Parameters(0).Value = [forms]![form]![text10]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM