我有一個查詢,其中包括一個Active標誌:true表示Active,false表示未激活。表單上有一個活動複選框控件。缺省值是Checked。當複選框被選中時,我需要查詢返回只有Active = true的記錄。當複選框未選中時,我需要返回所有記錄。MS Access查詢在具有true和所有記錄的記錄之間切換
我一直在試圖設置活動領域的標準,在這樣的查詢:
IIf([Forms]![myForm]![chkActive]=True,True,)
IIf([Forms]![myForm]![chkActive]=True,True, True or False)
IIf([Forms]![myForm]![chkActive]=True,True,([MyQuery]![Active])=True Or ([MyQuery]![Active])=False)
的理由是,如果chkActive被選中,那麼IIF返回true,否則,返回一些跡象表明,我想要所有記錄。 Checked部分似乎工作正常。如果我使用類似的東西:
IIf([Forms]![myForm]![chkActive]=True,True,False)
我可以在查看True記錄和False記錄之間切換。我想在查看True記錄和所有記錄之間切換。
另一件事是當表單打開時查詢不返回任何內容。我認爲[Forms]![myForm]![chkActive]
的值在需要查詢來填充表單時不存在。但是,查詢似乎在從chkActive的OnClick
事件中調用它時訪問[Forms]![myForm]![chkActive]
的罰款。它被稱爲:
DoCmd.Requery
任何有用的見解是讚賞。
謝謝 - 兩者都很好! –