我是Access和VBA的新手,但我熟悉SQL。我创建了一个Access 2007表,其中包含Yes / No复选框,例如:
SentInvite
ReSetnInvite
RespondedYes
RespondedNo
我正在尝试制作一个表单(再次在Access 2007中),让我可以对任何复选框组合进行查询。
到目前为止,我可以使用以下任意一个托管箱(如SentInvite)从表单进行查询:
SELECT *
FROM Party
Where forms!Invites!chxSent = True
但我无法让它在表单查询中执行多个复选框,例如SentInvite,ReSentInvite,RespondedYes:
SELECT *
FROM Party
WHERE (forms!Invites!chxSent = True AND
forms!Invites!chxReSent = True AND
forms!Invites!chxYes = True)
我每次都要写出一个SQL查询。
我如何根据QueryForm中的哪个复选框使用返回的列匹配?
我希望能够检查:
SentInvite
ReSetnInvite
然后点击“搜索”并返回那些然后如果我回到我的表单并检查:
ReSetnInvite
RespondedYes
然后点击“搜索”即可获得这些结果。
由于
答案 0 :(得分:0)
看起来您已将表单中的值混合到查询中,而不是使用表单中的值来提供(过滤)查询结果的值。尝试将表单上的值视为普通的SQL变量(减去@符号)。请尝试此查询:
SELECT *
FROM Party
WHERE Party.SentInvite = forms!Invites!chxSent AND
Party.ReSent = forms!Invites!chxReSent AND
Party.RespondedYes = forms!Invites!chxYes