2017-04-20 41 views
0

我有一個查詢生成一個記錄集,用於我使用MS Access報表創建的計算機生成的發票。該記錄看起來是這樣的(但有數百發票):如何用記錄源數據的子集打開MS-Access報告?

ControlNumber|ShippingAddress|InventoryDescription|... 
17-001  123 Fake St  Description A 
17-002  145 No addr  Description B 
17-003  23456 new st Description C 

我已在報表中設置這樣就產生了我不同的頁面上完全分開填寫發票系統中的每個發票。儘管如此,我不想通過數百個尋找我想要打印的具體人物。

我有另一個MS Access窗體,操作員用它來選擇打印這些發票的下拉組合框和一個按鈕。在我使用下拉菜單選擇要打印哪一個(比如17-003)後,我想點擊按鈕並彈出只有那一張發票的報告。如何告訴報告僅顯示該記錄集的子集?

如果需要,我可以使用現有的Access函數或編寫VBA代碼,但如果可能的話,我寧願不默認使用VBA。用於報告數據集的動態過濾

+0

如果您不想使用VBA,請使用filter屬性來引用窗體上的組合框值。 – geeFlo

+0

並確保將「FilterOnLoad」設置爲「是」。 – geeFlo

+0

如何設置過濾器屬性?我似乎無法完成這項工作。 – SandPiper

回答

3

選項:

  1. 動態參數化查詢作爲報告記錄源,這可以是一個彈出輸入或參考上形式的控制 - 我從不使用動態參數化查詢

  2. 在設計視圖中手動打開報告並設置Filter屬性,然後切換報告以打印預覽,然後打印

  3. 代碼(宏或VBA)在報告通過引用打開時應用過濾器窗體上的控件,例如VBA:DoCmd.OpenReport "report name", , , "ControlNumber='" & Me.cbxCN & "'"

+0

宏最終爲我工作。謝謝。 – SandPiper