NoData 事件發生於 Microsoft Access 格式化 (此報表結合到空的記錄集) 沒有資料,列印報表之後,但是在報表被列印之前。 使用此事件可取消空白報表的列印。
語法
表達。NoData (取消)
詞 代表 Report 物件的變數。
參數
| 名稱 | 必要/選用 | 資料類型 | 描述 |
|---|---|---|---|
| Cancel | 必要 | 整數 | 此設定決定是否要列印報表。 將 Cancel 引數設定為 True (1) 會防止列印報告。 您也可以使用 DoCmd 物件的 CancelEvent 方法取消報表的列印。 |
註解
若要在發生此事件時執行巨集或事件程序,請將 OnNoData 屬性設定為巨集的名稱或 [事件程序]。
如果報表未繫結至資料表或查詢 (,則不會使用報表的 RecordSource 屬性) ,則不會發生 NoData 事件。
此事件發生在報表的 Format 事件之後,但在第一個 Print 事件之前。
子報表不會發生此事件。 如果您想要在子報表沒有資料時隱藏子報表上的控制項,讓控制項在此情況下不會列印,您可以在發生 [格式] 或 [列印] 事件時執行的巨集或事件程序中使用 HasData 屬性。
NoData 事件發生在報表的第一個 Page 事件之前。
範例
下列範例顯示如何在報表沒有資料時取消列印。 也會顯示一個通知使用者列印已取消的訊息方塊。
若要嘗試此範例,請將下列事件程序新增至報表中。 當報表沒有資料時,請嘗試執行報表。
Private Sub Report_NoData(Cancel As Integer)
MsgBox "The report has no data." & _
chr(13) & "Printing is canceled. " & _
chr(13) & "Check the data source for the " & _
chr(13) & "report. Make sure you entered " & _
chr(13) & "the correct criteria (for " & _
chr(13) & "example, a valid range of " & _
chr(13) & "dates),." vbOKOnly + vbInformation
Cancel = True
End Sub
下列範例示範如何使用報表的 NoData 事件,以防止報表在沒有要顯示的資料時開啟。
Private Sub Report_NoData(Cancel As Integer)
'Add code here that will be executed if no data
'was returned by the Report's RecordSource
MsgBox "No customers ordered this product this month. " & _
"The report will now close."
Cancel = True
End Sub
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。