我需要在MS access中创建一个查询,参数是一个列表(由我给出)。
工作原理 In ("2209487";"2102669";"2727930";"3727550")
但如果我尝试在 "IN "中加入一个参数,就像这样。在([NUM])中,它没有返回一个结果!我写了 2209487";"2102669";"2727930";"3727550
当参数窗口出现时。
PS:我的笔记本是欧洲葡萄牙语,所以我用";"。
你不能使用 "list "或 "multiple "值。但你可以在表单(或报表)的where子句中这样做。
首先,删除formreport的任何paramters。你希望能够在没有任何查询提示的情况下打开formreport。事实上,如果你直接将formreport建立在表上,下面的操作甚至会有效。
所以,你可以这样做。
dim strInvoices as string
strInvoices = InputBox("Enter invoice numbers ',' between each")
dim strWhere as string
strWhere = "InvoiceNumber in (" & strInvoices & ")"
docmd.OpenReport "frmInvoices",,,strWhere
所以,你可以提供一个列表 如上所述,并使用 "在"
IN条款是这样的
InvoiceNumber in (234,433,555)
所以,你可以把条件作为 "where "子句传递给一个开放的表单或报表。
谢谢大家!!!
我已经用另一种方式重新做了数据库的查询和逻辑)。