Accessレポートの改ページ方法

概要

この記事の結論
Accessのレポートでは、セクションの[改ページ]でページを切り替えます。1レコードずつ分けるなら詳細セクション、請求書ごとに分けるなら請求書IDのグループヘッダーなどを対象にします。確認には印刷プレビューを使います。グループ改ページと詳細の改ページを重ねると不要な分割が起きるため、目的に合った設定へ整理しましょう。

この記事でわかること

  • 何を1ページの単位にするか先に決める
  • レコード単位とグループ単位を使い分ける
  • 印刷プレビューとPDFで確認する
  • 幅・余白・KeepTogether・最終ページを点検する

この記事の主な内容

  1.  改ページの方法を目的で選ぶ
  2. 1レコードごとにページを分ける
  3. 請求書や顧客のグループごとにページを分ける
  4. 途中の改ページとグループ分割を調整する
  5. 白紙や余分なページが出る原因と対処
  6. 可変長の帳票を検証して運用する
  7. まとめ
  8. よくある質問

想定読了時間:約12分~15分


改ページの方法を目的で選ぶ

Accessのレポートでページを分けるには、まず「1ページの単位」を決めます。1レコードずつ分けるのか、請求書1通に含まれる複数明細をまとめるのか、帳票の途中で任意に区切るのかによって、設定する場所が変わります。

例えば顧客の住所録を1件1枚で出すなら詳細セクションが候補です。請求書では複数の売上明細が1通に入るため、請求書IDによるグループ単位で考えます。同じ顧客でも請求書が複数あるなら、顧客IDだけのグループでは別の請求書が混ざる可能性があります。

目的主な設定対象考え方
1レコードごとに区切る詳細セクション1件の処理後に次ページへ
請求書ごとに区切る請求書IDのグループヘッダー等グループの先頭を新ページへ
同じセクションの途中で区切る改ページコントロール指定位置より後を次ページへ
行や見出しの分断を減らすKeepTogetherなど強制改ページとは別に調整
レコード単位とグループ単位、任意位置の違いを説明する図

改ページプロパティの4つの値

セクションの[改ページ]は、VBAではForceNewPageに対応します。設定には、しない、セクションの前、セクションの後、前後があります。日本語表示は版によって「カレントセクションの前」などとなるため、意味で確認してください。

設定値動作の意味
しない0この設定による強制改ページをしない
セクションの前1対象セクションを新しいページから始める
セクションの後2次のセクションを新しいページから始める
セクションの前後3対象と、その後をそれぞれ新しいページから始める

「しない」にしても、用紙に入りきらなければ自然な改ページは発生します。また、ForceNewPageはページヘッダー・ページフッターには適用されません。レポートヘッダーやグループヘッダーとは別のセクションなので、選択対象を確認してください。

確認は印刷プレビューで行う

レポートビューの見た目だけでは、印刷時のページ境界を判断できません。改ページを設定したら印刷プレビューへ切り替えます。最終的にPDFで配布するなら、PDF出力後にも同じ位置で区切られているかを確かめます。


1レコードごとにページを分ける

レポートの詳細セクションは、通常、レコードごとに繰り返し出力される部分です。その後で改ページするように設定すると、次のレコードが新しいページから始まる構成にできます。カード、単票、1件ごとの案内書などで使う考え方です。

詳細セクションを設定する手順

1. 対象レポートのコピーを作り、デザインビューで開きます。
2. [詳細]と書かれたセクションのバーをクリックします。
3. F4でプロパティシートを表示し、選択対象が詳細セクションか確認します。
4. [書式]の[改ページ]を[カレントセクションの後]に設定します。
5. 保存し、印刷プレビューで1件ずつページが切り替わるかを見ます。

詳細セクションの後で次のページへ進む設定を示す図

文字を表示しているテキストボックスを選んだままでは、セクション用の設定はできません。プロパティシートの対象名を確認してから変更します。設定後は1件だけのデータと複数件のデータの両方で、先頭・中間・末尾を確認してください。

1レコードが必ず1枚に収まるわけではない

詳細セクションが印刷可能な高さより大きい、長い文章で部品が伸びる、サブレポートが増える、といった場合は1レコードが複数ページになることがあります。強制改ページは開始位置を制御する設定で、内容を自動的に縮めるものではありません。

ページヘッダー、ページフッター、上下余白も本文が使える高さを減らします。実際の最長データを入れて、詳細全体が収まるかを確認します。最後のレコード後に余分なページが出る場合は、末尾のレポートフッターや他の改ページとの組み合わせを見直します。


請求書や顧客のグループごとにページを分ける

複数の明細をまとめた帳票では、レコードごとではなくグループごとに区切ります。最初に帳票1通を表すキーを決め、グループ化と明細の並び順を整えてから改ページを設定します。請求書なら、請求書IDが代表的な候補です。

顧客IDだけでよいかを確認する

教育用の例として、顧客201に請求書1001と1002があり、それぞれ複数の明細を持つとします。この2通を別々に出すなら、顧客201という情報だけでは区切れません。請求書IDでグループ化し、その中で明細番号順に並べます。

顧客が同じでも請求書が別なら請求書IDで区切る考え方を示す図
データの単位例役割
顧客顧客ID201宛先を識別する
請求書請求書ID1001、1002帳票1通を識別する
明細明細番号1、2、3帳票内の行を識別する

単に顧客ごとの取引一覧を出す目的なら顧客IDでよい場合もあります。何をまとめるかは帳票の目的次第です。名前が同じ別顧客をまとめないよう、表示名だけではなく管理上のIDを使うことも確認してください。

グループヘッダーの前で改ページする手順

1. デザインビューで[グループ化と並べ替え]を表示します。
2. [グループの追加]から請求書IDを選びます。
3. 必要に応じて詳細設定でグループヘッダーを表示します。
4. 請求書IDヘッダーのセクションを選択します。
5. [改ページ]を[カレントセクションの前]へ設定します。
6. 詳細セクションの強制改ページを[しない]に戻します。
7. 請求書IDが切り替わる位置を印刷プレビューで確認します。

グループヘッダーの前で改ページし詳細の強制改ページを解除する図

顧客名や請求書番号はグループヘッダー、商品や数量は詳細、小計や請求合計は必要なフッターへ置くと、繰り返す単位を整理できます。どのセクションも単に見た目で選ばず、何回出力されるべき情報かを考えて配置します。

詳細とグループの改ページを重ねない

以前の1件1枚の設定が詳細に残っていると、グループ改ページを追加しても各明細でページが分かれます。グループ単位に切り替えるときは、詳細・グループヘッダー・グループフッターの設定をまとめて確認します。

グループヘッダーの前で改ページしても、レポート全体のタイトル用ヘッダーや別の改ページと組み合わさると、先頭にタイトルだけのページができる場合があります。先頭ページの構成を意図どおりにしたいなら、レポートヘッダーを含めて確認してください。


途中の改ページとグループ分割を調整する

改ページコントロールは、同じセクション内の指定位置でページを切り替えたいときに使います。一方、KeepTogetherは関連する内容をなるべく分割しないための設定です。「区切る機能」と「まとまりを保つ機能」を分けると、設定の組み合わせを理解しやすくなります。

改ページコントロールを置く

レポートをデザインビューで開き、コントロールの[改ページ]を選び、区切りたい位置に配置します。レポートヘッダーや詳細など、配置が適切なセクションで使います。ページヘッダー・ページフッターには配置できません。[1]

詳細セクションへ置いたコントロールは、詳細が繰り返されるたびに働くことに注意してください。一度だけ区切りたい説明文のために使う場合は、その説明が置かれているセクションと繰り返し回数を確認します。不要になったら対象コントロールを選択して削除し、プレビューで結果を見ます。

KeepTogetherでまとまりを保つ

セクションのKeepTogetherは、一つのセクションを同じページにまとめるための設定です。グループに対するKeepTogetherには、グループ全体や先頭の明細と一緒に扱う考え方があります。設定場所と対象範囲が違うため、同じ名前でも混同しないようにします。

ForceNewPageとKeepTogetherの役割の違いを整理する図
設定対象目的注意点
セクションの分割抑制一つの明細などを途中で割らない収まらない大きさは別途設計
グループ全体の分割抑制見出しから明細までをまとめる大きなグループは分割される
先頭の明細と一緒に保持見出しだけのページ末尾を避ける後続の明細は次ページへ続く
強制改ページ新しいページから開始する分割抑制とは別の動作

Microsoftは、グループ全体が1ページに収まらない場合には、そのグループのWhole Group設定を無視すると説明しています。明細100行の請求書を設定一つで1ページへ縮めることはできません。複数ページになることを前提に、見出しや合計の出し方を設計します。

続きのページに見出しを繰り返す

グループが複数ページへ続く場合は、グループヘッダーのRepeatSectionを使い、次のページにも見出しを出す方法があります。日本語のプロパティ名では[繰り返しセクション]などと表示されます。顧客名や帳票番号が続きのページでも分かると、紙が分かれても内容を追いやすくなります。

複数ページにまたがるグループでヘッダーを繰り返す図

列名をどこへ置くかも確認します。全ページ共通ならページヘッダー、グループ固有の情報ならグループヘッダーが候補です。両方に同じ見出しを入れると重複表示になるため、役割を整理してから繰り返しを設定します。

請求書の改ページや白紙ページの問題を相談する

基本操作で解決できる範囲は、まずコピーで試し、出力結果を確認しましょう。可変行請求書、複数のサブレポート、異なるプリンターでページ数が変わる、連続出力で白紙が混じる場合は、専門家への相談もご検討ください。

既存Accessの状況整理から、クエリ・フォーム・レポートの改修までご相談いただけますのでお気兼ねなく下記へご相談下さい。


白紙や余分なページが出る原因と対処

白紙ページは、改ページ設定だけが原因とは限りません。横方向のはみ出し、末尾セクションの高さ、見えにくい罫線、部品の伸長などでもページが増えます。どの位置で増えるかを記録すると、確認順を決めやすくなります。

交互の白紙は横幅から確認する

1ページおきに白紙が入る場合は、レポート幅と左右余白の合計が用紙幅を超えていないかを確認します。デザインビューの右端にある罫線や画像が、印刷したい範囲からはみ出していないかも見ます。白紙に見えても、右端の一部だけが別ページへ送られていることがあります。

例えばA4縦の用紙幅は210mmです。左右を10mmずつ使う設計なら、レポート幅は190mm以内が確認の目安になります。さらに、実際のプリンターが印刷できる範囲を考慮します。改ページプロパティを何度も変える前に、まず用紙と幅を合わせます。

最後だけ余分なページが出る場合

最終レコードやグループの「後」で改ページし、その後にレポートフッターなどがあると、フッター用のページが発生することがあります。内容がなくても高さが残っていないか、前後両方の改ページが重複していないかを確認します。

白紙や分割の出方先に確認するもの確認操作
1ページおきに白紙幅・左右余白・右端の部品レポートの右端を確認
最後だけ余分なページ末尾の改ページ・フッター一つずつ解除して比較
明細が毎回別ページ詳細に残った改ページ詳細を[しない]へ
グループの前に大きな空き分割抑制・部品の高さグループの保持設定を確認
長い摘要で崩れるCanGrow・詳細の伸長長文データでプレビュー
別PCだけ崩れる用紙・フォント・プリンター同じ条件へそろえて比較
横幅、右端の部品、改ページの重複、末尾セクションを確認する図

見えない部品も確認する

文字が入っていないテキストボックス、白い背景に白い線、右側へ離れたラベルなどがページ領域を広げていることがあります。詳細セクションを必要以上に高くしたままにすると、下に大きな余白ができることもあります。

ただし、帳票を詰めるために必要なフッターや間隔を削ると、合計の読みやすさが落ちます。印刷順、見出し、明細、合計という役割を維持しながら、不要な部品や高さを調整します。問題が解消した変更だけを本番側へ反映するよう、変更前後を残してください。


可変長の帳票を検証して運用する

帳票の改ページは、典型的なデータだけでは検証しきれません。明細数が増えたとき、摘要が長いとき、最後のページに合計だけが残るときなど、境界に近いデータで結果を確認します。画面の設計寸法だけで、すべての出力を判断しないことが大切です。

最低限試したいデータ

検証ケース期待する状態
明細1行不要な白紙や空の続きページがない
1ページに収まる最大付近合計やフッターが欠けない
その件数を1行超える意図した続きページになる
長い摘要や備考文字切れせず、改ページも読める
複数の請求書別帳票が同じページへ混ざらない
最終請求書末尾に不要なページがない
対象0件空帳票を発行するか停止するかが明確
少数明細と最大明細、長文、最終ページを確認するチェックリスト

固定行数で分けたい場合

「必ず20行で改ページ」のような要件は、単に顧客グループの前で区切る設定とは異なります。行の高さを固定するのか、長い摘要を折り返すのか、合計行を何行分として扱うのかを先に決めます。可変長の明細では、行数だけで印刷位置は決まりません。

補助的なページグループをデータ側に用意する、レイアウトを固定する、イベントで制御するなどの方法がありますが、処理の再評価やサブレポートとの組み合わせを考慮する必要があります。単純なカウンターの加算だけで汎用的に解決するコードとして紹介せず、帳票要件に合わせて設計します。

検証結果と設定を引き継ぐ

レポート名、グループキー、並べ替え順、各セクションの改ページ、分割抑制、繰り返し設定、用紙と余白を記録します。さらに、Accessの製品名・Build・bit数と出力先プリンターを残すと、PC交換後に同じ状態へ戻しやすくなります。

PDFを正規の配布物とする運用なら、その出力経路を固定し、完成PDFのページ数と境界を照合します。紙印刷も必要なら実際のプリンターでも確認します。帳票の修正は、見た目の整備とデータの区切り方を一緒に確認する作業です。


まとめ

Accessの改ページは、1レコード単位なら詳細、請求書単位ならグループを対象に設定します。グループ改ページへ変更するときは、詳細に残った強制改ページも見直します。白紙が出たら幅と余白、末尾セクション、設定の重複を確認し、境界データとPDFで仕上がりを確かめましょう。

よくある質問

印刷時のページ境界は印刷プレビューで確認します。レポートビューの見た目だけで設定が無効と判断しないでください。

詳細セクションの後で改ページする設定が候補です。ただし、1レコードの内容が用紙に収まる高さであることが必要です。

顧客IDでグループ化し、そのグループのヘッダー前などで改ページします。請求書単位なら請求書IDなど、帳票1通のキーを使います。

詳細セクションに以前の強制改ページが残っていないか確認します。グループ単位へ切り替えたら、詳細は通常[しない]に戻します。

なりません。強制改ページをしないだけで、内容が用紙を超えれば自然な改ページは発生します。

できません。グループ全体が1ページに収まらない場合は分割されます。複数ページを前提に見出しや合計を設計します。

グループヘッダーのRepeatSectionを使う方法があります。共通のページヘッダーとの重複も確認します。

末尾の改ページとレポートフッターの組み合わせ、部品の高さなどを確認します。交互に白紙が出る場合は横幅を先に点検してください。

ForceNewPageはページヘッダー・ページフッターには適用されません。グループや詳細など、区切りたい対象を確認します。

改ページコントロールを使えます。詳細に置けばレコードごとに繰り返されるため、配置場所と繰り返し単位を確認します。

固定行数の要件として別途設計します。長文の折り返し、合計行、可変高さを決めたうえで、ページ単位のデータやレイアウト制御を検討します。

用紙、余白、フォント、Accessの版・Build、プリンタードライバー、出力経路の差を確認します。基準となる環境とPDFを記録して比較してください。

請求書の改ページや白紙ページの問題を相談する

基本操作で解決できる範囲は、まずコピーで試し、出力結果を確認しましょう。可変行請求書、複数のサブレポート、異なるプリンターでページ数が変わる、連続出力で白紙が混じる場合は、専門家への相談もご検討ください。

既存Accessの状況整理から、クエリ・フォーム・レポートの改修までご相談いただけますのでお気兼ねなく下記へご相談下さい。


参考情報

[1] Microsoft  改ページコントロールとグループ改ページ
https://support.microsoft.com/en-us/access/insert-a-page-break-control-in-an-access-report

[2] Microsoft  ForceNewPageの値と対象
https://learn.microsoft.com/en-us/office/vba/api/access.section.forcenewpage

[3] Microsoft  セクションの分割抑制
https://learn.microsoft.com/en-us/office/vba/api/access.section.keeptogether

[4] Microsoft  グループの分割抑制
https://learn.microsoft.com/en-us/office/vba/api/access.grouplevel.keeptogether

[5] Microsoft  ヘッダーの繰り返し
https://learn.microsoft.com/en-us/office/vba/api/access.section.repeatsection

[6] Microsoft  帳票の設計
https://support.microsoft.com/en-us/access/guide-to-designing-reports

TOP