Report.Open イベント (Access)
Open イベントは、レポートをプレビューまたは印刷する前に発生します。
構文
式。開く (キャンセル)
式Report オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
Cancel | 必須 | 整数型 (Integer) | フォームまたはレポートを開くかどうかを設定します。 引数 Cancel を True (1) に設定すると、フォームまたはレポートの開きが取り消されます。 |
戻り値
なし
解説
たとえば、Open イベント マクロまたは Open イベント プロシージャを使って、フォームに表示するレコード セットを抽出するための条件や、レポートに含める日付の範囲を入力するためのカスタム ダイアログ ボックスを開くことができます。
クエリを基にするレポートを開いた場合は、レポートの基になるクエリが実行される前に Open マクロや Open イベント プロシージャが Microsoft Access によって実行されます。 これにより、ユーザーはレポートを開く前に条件を指定できます。たとえば、カスタム ダイアログ ボックスでは、 Open イベントが発生したときに表示されます。
複数のフォームを同時に読み込むアプリケーションの場合、フォーカスが他のフォームに移動したときに、カスタム ツールバーの表示と非表示を切り替えるには、Open イベントの代わりに Activate イベントおよび Deactivate イベントを使います。
たとえば、Close イベントが発生したときに、他のウィンドウを開いたり、フォームやレポートを使用したユーザーを示すログ エントリを作成するために、ユーザー名を入力するダイアログ ボックスを表示したりすることができます。
マクロまたはイベント プロシージャに Open イベントと Load イベントのどちらを使用するかを決定しようとしている場合、大きな違いの 1 つは Open イベントを 取り消すことができるが、 Load イベントでは使用できないことです。 たとえば、フォームの Open イベントのイベント プロシージャでフォームのレコード ソースを動的に作成する場合、表示するレコードがない場合はフォームの開き方を取り消すことができます。 同様に、Unload イベントは取り消すことができますが、Close イベントは取り消すことができません。
例
次の例は、構造化照会言語 (SQL) ステートメントを使用して、レポートを開くときにレポートのデータ ソースを確立する方法を示します。
Private Sub Report_Open(Cancel As Integer)
On Error GoTo Error_Handler
Me.Caption = "My Application"
DoCmd.OpenForm FormName:="frmReportSelector_MemberList", _
Windowmode:=acDialog
'Cancel the report if "cancel" was selected on the dialog form.
If Forms!frmReportSelector_MemberList!txtContinue = "no" Then
Cancel = True
GoTo Exit_Procedure
End If
Me.RecordSource = ReplaceWhereClause(Me.RecordSource, _
Forms!frmReportSelector_MemberList!txtWhereClause)
Exit_Procedure:
Exit Sub
Error_Handler:
MsgBox Err.Number & ": " & Err.Description
Resume Exit_Procedure
Resume
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。