2017-04-19 11 views
0

ボタンをクリックしてレポートを開くための選択コンボボックスが表示されません。ここに私が持っているものがあります。何を指示してるんですか?何もクリックされていない場合にのみインベントリレポートを開きますが、他のレポートを開くことはできません。コンボボックスを選択してレポートを開く

Private Sub Run_Inventory_Report_Macro_Click() 
Dim strSortBy As String 

strSortBy = Nz(Me.cmb_InventorySort.Value, "") 

Select Case strSortBy 
Case "" 
    DoCmd.OpenReport "Inventory", acViewPreview 
Case "Provider ID" 
    DoCmd.OpenReport "Inventory-Provider Number", acViewPreview 
Case "Provider Last Name" 
    DoCmd.OpenReport "Inventory-Provider Last Name", acViewPreview 
Case "Inventory Type" 
    DoCmd.OpenReport "Inventory-Inventory Type", acViewPreview 
Case "Corporate Receipt Date" 
    DoCmd.OpenReport "Inventory-Corporate Receipt Date", acViewPreview 
Case "PODM Receipt Date" 
    DoCmd.OpenReport "Inventory-PODM Receipt Date", acViewPreview 
End Select 

End Sub 

答えて

0

cmb_InventorySortコンボボックスの値は何ですか?ルックアップテーブルを使用して、開いておきたいレポート名を返すことがあります。

すなわち ReportList

ID | ReportName 
Inv | Inventory 
Provider ID | Inventory - Provider Number 

それが値集合ソースだとしてあなたのコンボボックスは、上記の表を使用します。

その後、コンボボックスから項目を選択した後(またはボタンをクリックした後)、選択したレポートをルックアップすることができ、case文をハードコードする必要はありません。つまり、必要に応じてテーブルからレポート名を変更/追加/削除することができます。

StrReport = dlookup("ReportName","ReportList", "ID = '" & me!cmb_InventorySort & "'" 

docmd.openreport strReport, acViewPreview 
0

スクリプトが正しいことが分かります。レポートに戻ってレポートレイアウトにエラーを修正する必要がありました。

関連する問題