AccessレポートのSectionを指定する定数一覧とVBAで表示/非表示を行う方法

Accessレポートには、詳細・ヘッダー・フッターなどのセクションがあり、セクションプロパティの引数で指定することができます。

ここではその定数の一覧と、レポートのオープン時の引数(OpenArgs)で表示/非表示を行うVBAを掲載します。

BackHome Backレポート


■レポートのSectionを指定する定数一覧

Sectionの位置については「Access レポートのセクションの種類」を参照してください。

定数 内容
0 acDetail 詳細
1 acHeader ヘッダー
2 acFooter フッター
3 acPageHeader ページ ヘッダー
4 acPageFooter ページ フッター
5 acGroupLevel1Header グループ レベル1 のヘッダー
6 acGroupLevel1Footer グループ レベル1 のフッター
7 acGroupLevel2Header グループ レベル2 のヘッダー
8 acGroupLevel2Footer グループ レベル2 のフッター
グループ レベルを追加した場合は、9からになります。

■VBAでレポートSectionの表示/非表示を行う方法

下の商品一覧レポートを使用しVBAを作成します。
ここでは「商品一覧」のタイトルや日付が表示される、ページヘッダーを非表示にします。
商品一覧レポート

未処理のレポート プレビュー画面です。
ページヘッダーの「商品一覧」のタイトルと日付が表示されています。
未処理のレポート プレビュー画面

デザインビューのレポート イベントプロパティで、「開く時」から[イベント プロシージャ]を選択します。
「開く時」から[イベント プロシージャ]を選択する

レポートのオープン時の引数(OpenArgs)で、ページヘッダーの表示/非表示を行うVBAです。
ページヘッダーの表示/非表示を行うVBA

・If Me.OpenArgs = "1"で引数を判定しています。
レポートを開くには、DoCmd.OpenReportのOpenArgsに"1"を設定します。
DoCmd.OpenReport "R_商品一覧", acViewPreview, , , , "1"

・Section(acPageHeader)で、ページヘッダーを指定しています。

Private Sub Report_Open(Cancel As Integer)
   If Me.OpenArgs = "1" Then
        Me.Section(acPageHeader).Visible = True
    Else
        Me.Section(acPageHeader).Visible = False
    End If
End Sub

実行結果です。
「商品一覧」のタイトルと日付がある、ページヘッダーが表示されていません。
ページヘッダーが表示されていない


BackHome Backレポート

Copyright(C) FeedSoft