Microsoft Access Club >Access裏技Tips >このページ >次頁 < 前項 サイト内検索


ユニークなページ番号を印字する : Access裏技Tips



ページフッターに印字されるAccess所定のページ番号は味気ないものです。 ここでは、ページヘッダー、ページフッターに独自のページ番号を印字する技を紹介します。

ページ番号の印字

  1. サンプルテーブル(tbl_sample)をもとにして、「取引状況一覧リスト」の 帳票レポート(rpt_sample)を作成します。
  2. このサンプルレポートは、8ページに及ぶ多くのデータを持っています。
  3. ページヘッダーの「フォーマット時イベント」を利用して、ページヘッダー、ページフッターに独自のページ番号を印字します。

「取引状況一覧リスト」レポートの作成

サンプルテーブルをもとに、「取引状況一覧リスト」レポートを作成します。

  1. ページヘツダーにラベル(lblページヘッダー)を作成します。
  2. ページフッターにラベル(lblページフッター)を作成します。
  3. ページフッターにテキストボックス(txtpages)を作成し、コントロールソースに =[Pages] と配置します。

今回のおすすめポイント

Pages プロパティ

Pages プロパティを用いるとレポートの総ページ数を求めることができますが、VBA内でこのプロパティを利用するためには、 ページフッター にテキストボックを作成し配置しておかなくてはいけません。

ページヘッダー「フォーマット時イベント」プロシージャの作成

ページヘッダー「フォーマット時イベント」プロシージャを記述します。

Private Sub ページヘッダーセクション_Format(Cancel As Integer, _
						FormatCount As Integer) ' --A

    Dim strlabA As String
    Dim strlabB As String
    strlabA = Me.Page & "ページ目"
    strlabB = (Me.Pages - Me.Page) & "ページ"
    
    If Me.Page = 1 Then ' --- B
        Me.lblページヘッダー.Caption = ""
    Else
        Me.lblページヘッダー.Caption = "前ページの続き…" & strlabA
    End If

    If Me.Page = Me.Pages Then ' --- C
        Me.lblページフッター.Caption = ""
    Else
        Me.lblページフッター.Caption = " 次ページへ続く…残り " & strlabB
    End If

End Sub

解説

  1. ページヘッダーセクションがフォーマットされるごとに、各ラベルに文字列を与えていきます。
  2. Ifステートメントを用いて、1ページ目であれば、lblページヘッダーの表題に""(空白)を代入します。Page プロパティは、カレントページのページ番号の値を返します。
  3. Ifステートメントを用いて、最後のページであれば、lblページフッターの表題に""(空白)を代入します。Pages プロパティは、レポートの合計ページ数の値を返します。

動作確認

  1. レポートをデザインビューから印刷プレビューに切り替え、ページを移動させます。
  2. 1ページ目は、ページフッターに独自のページ番号が印字されます。

  1. 2ページ目以降は、ページヘッダーに独自のページ番号が印字されます。

関連ページ

ページの先頭へ 前ページへ戻る

 


ユニークなページ番号を印字する : Access裏技Tips


 

-Microsoft Access Club-

注目のモンスター専用サーバーからお買い得プランまで幅広くそろえています。cPanel、PLESK、WEBMINまでお任せ下さい。
注目のモンスター専用サーバーからお買い得プランまで幅広い。
cPanel、PLESK、WEBMINまでお任せ下さい。