概要
| この記事の結論 Accessの表形式レポートは、項目名を横に並べ、その下へ複数レコードを行として繰り返す一覧向けの配置です。顧客一覧や売上一覧では、ページヘッダーに列見出し、詳細にデータ、グループフッターやレポートフッターに集計を置くと管理しやすくなります。レイアウトの選択だけでは列幅や改ページは完成しません。この記事ではウィザードでの作成、既存レポートの変更、並べ替え、印刷幅、検算の方法を説明します。 |
この記事でわかること
- 表形式レポートの役割と向いている用途
- ウィザードで表形式レポートを作る
- 既存のレポートを一覧に変更する
- 印刷の切れと空白ページを直す
この記事の主な内容
- 表形式レポートの役割と向いている用途
- 一覧にするデータをクエリで準備する
- ウィザードで表形式レポートを作る
- セクションごとの配置を整える
- 既存のレポートを一覧に変更する
- 並べ替えと小計を設定する
- 印刷の切れと空白ページを直す
- 出力前の確認
- よくある質問
想定読了時間:約15分~20分
1. 表形式レポートの役割と向いている用途
表形式レポートは、項目を列に、レコードを行に並べる一覧向けのレポートです。顧客名・地域・担当者を横に配置し、顧客の数だけ行を繰り返すイメージです。複数件を見比べたいときや、紙に印刷して確認印を付けたいときに向いています。
データシートと似て見えますが、レポートでは用紙、余白、見出し、ページ番号、集計欄を含めて印刷用の体裁を設計します。データを入力・修正する画面を作りたい場合はフォームを使い、レポートは確認と出力を担うものとして分けると運用が明確になります。
| 用途 | 表形式が向く理由 | 先に決めること |
|---|---|---|
| 顧客一覧 | 顧客ごとの情報を横に比較できる | 1行を顧客1件にする |
| 受注明細一覧 | 商品・数量・金額を連続して確認できる | 1行を受注明細1件にする |
| 部署別売上一覧 | 部署ごとの明細と小計を置ける | 部署のまとまりと並び順 |
| 長い経緯を読む個票 | 横長の一覧では読みづらい場合がある | 個票形式との使い分け |

2. 一覧にするデータをクエリで準備する
1行が何を表すかを決める
作成前に「顧客1件で1行」「注文1件で1行」「注文明細1件で1行」のいずれかを決めます。顧客と受注を結合すると、受注が3件ある顧客は3行になることがあります。顧客名が繰り返されていても、それだけでレポートの配置ミスとは判断できません。
顧客一覧の例では、顧客ID、顧客名、地域、担当者を表示する選択クエリを作り、「Q_顧客一覧」と保存します。クエリをデータシートビューで開き、顧客IDが意図せず重複していないか、必要な顧客が抽出されているかを先に確認してください。
必要な列と抽出条件を固定する
印刷しない内部メモや大きな画像まで含めると、列幅や処理時間の調整が難しくなります。掲載する列を絞り、対象期間や有効顧客だけといった条件をクエリで整理します。期間を絞った一覧には、レポートのタイトル付近にも対象期間を表示すると誤読を減らせます。
確認用データには短い社名だけでなく、長い社名、担当者が未入力の行、地域が違う行を含めます。数行だけのきれいなデータで作ると、運用開始後に文字の欠けや空欄の意味が問題になりやすいためです。元テーブルを編集せず、複製した検証用データで試します。

3. ウィザードで表形式レポートを作る
最初はグループなしの一覧を作る
1. ナビゲーションウィンドウでQ_顧客一覧を選び、[作成]から[レポートウィザード]を開きます。
2. 使用するテーブル/クエリを確認し、顧客ID・顧客名・地域・担当者を選択します。
3. 最初の練習ではグループ化を追加せず、並べ替えに顧客IDの昇順を指定します。
4. レイアウトの選択画面に[表形式]が表示される場合はそれを選び、用紙の向きも指定します。
5. R_顧客一覧などの名前で保存し、印刷プレビューで見出しと明細が読めるか確認します。
ウィザードの選択肢は、選んだ項目やグループ化の有無、Accessの画面によって変わります。表形式が見当たらないときは、まずグループなしの単純な一覧で試してください。作成後にレイアウトビューやデザインビューで横並びの配置へ調整する方法もあります。
作成直後に確認する3点
表示された件数が元クエリと一致すること、顧客IDの順序が正しいこと、すべての列が用紙内にあることを確認します。ウィザードは開始点を作る機能です。列幅や余白まで実務の印刷条件に自動で最適化されると考えず、実際の出力を見て調整しましょう。

4. セクションごとの配置を整える
レポートは「セクション」と呼ぶ領域を組み合わせて出力します。行ごとに繰り返す値は詳細に、各ページで必要な列見出しはページヘッダーに置くのが基本です。同じ見出しを詳細へ置くと、明細の数だけ繰り返されて紙面を使ってしまいます。
| 領域 | 主な用途 | 配置例 |
|---|---|---|
| レポートヘッダー | レポートの冒頭に表示 | 顧客一覧という表題・対象期間 |
| ページヘッダー | 各ページの上部に表示 | 顧客ID・顧客名などの列見出し |
| 詳細 | 元データのレコードを繰り返す | 顧客名を表示する連結テキストボックス |
| グループフッター | グループの末尾に表示 | 地域別の件数・部署別の小計 |
| レポートフッター | レポート全体の末尾に表示 | 全体の件数・総合計 |
| ページフッター | 各ページの下部に表示 | ページ番号・出力日 |
長い文字列を想定して高さを調整する
顧客名が長い場合は列を広げるか、テキストボックスの[印刷時拡張]を検討します。拡張すると行の高さが変わり、1ページの件数も変わります。隣の項目や罫線との見え方を確認し、すべての行が一定の高さである前提の運用を見直してください。

設定変更の影響範囲を判断できない場合は
共有データや既存の計算式まで影響する場合は、症状・対象画面・期待する結果を整理してAccessの教科書へご相談ください。データの持ち方と表示・集計の設定を分けて確認すると、必要な改修範囲を検討しやすくなります。
5. 既存のレポートを一覧に変更する
既存の単票レポートも、項目名を上段へまとめ、詳細の値を横一列に配置すると一覧へ作り替えられます。ただし、保存したレイアウトを単純な表示切り替えだけで安全に変換できるとは限りません。最初にレポートをコピーし、別名で編集します。
1. 元のレポートをコピーしてR_顧客一覧_検証などの名前にします。
2. デザインビューで、表示する値のコントロールソースを確認します。表題のラベルと値のテキストボックスを区別します。
3. 列見出しをページヘッダーへ配置し、対応する値を詳細で横一列に並べます。
4. 詳細の不要な空白を減らし、列幅、左右位置、数値の右揃えを整えます。
5. レコードソース、抽出条件、並び順を照合してから印刷プレビューで比較します。
一部だけ動かせないときはレイアウトを確認する
複数の部品が一緒に移動する場合は、コントロールレイアウトに含まれている可能性があります。表形式のコントロールレイアウトは部品を整列させる仕組みです。必要な場合だけ[配置]のレイアウト解除を使い、解除後は列のずれを個別に確認します。
「表形式に見えるレポート」と「表形式のコントロールレイアウトを使ったレポート」は同じ意味ではありません。配置の枠組みを解除しても、データの連結や横並びの見た目を維持できます。解除前後で数式やイベントまで変更する必要は通常ありません。

6. 並べ替えと小計を設定する
並び順はレポート側で指定する
テーブルで見えた順序を、そのまま印刷順序として頼らないでください。レポートの[グループ化と並べ替え]で地域、顧客名、顧客IDなどの順序を指定します。同名の顧客がある場合は最後に顧客IDを加えると、並ぶ順序を安定させやすくなります。
部署別の売上一覧なら、部署をグループにし、その中を売上日と売上IDで並べます。部署の小計はグループフッター、全体の合計はレポートフッターへ置きます。ページが変わった場所で部署の小計を区切るわけではない点に注意してください。
件数と合計は元データの単位を確認する
| 集計したいもの | 置く場所 | コントロールソースの例 |
|---|---|---|
| 一覧全体の行数 | レポートフッター | =Count(*) |
| 地域ごとの行数 | 地域のグループフッター | =Count(*) |
| 一覧全体の売上金額 | レポートフッター | =Sum([売上金額]) |
| 部署ごとの売上金額 | 部署のグループフッター | =Sum([売上金額]) |
Count(*)は出力対象の行を数えるため、顧客が重複するクエリでは顧客数になりません。また、Sumの対象はレコードソースに存在する数値フィールドや式です。ページフッターへ同じ式を置いても、そのページだけの合計にはなりません。

7. 印刷の切れと空白ページを直す
用紙幅から余白を引いて確認する
横が切れるときは、レポートの幅と左右余白の合計が用紙幅を超えていないか確認します。A4縦の幅は21cmです。左右を各1cmにするなら設計上の本文幅は最大19cmが目安になります。プリンター固有の印刷可能領域もあるため、最終的には使用する出力先で確認します。
表の右端が収まっていても、見えにくい線やラベルが右側にはみ出していると空白ページが出る場合があります。デザインビューで一番右の部品を探し、部品の左位置と幅、レポート自体の幅を確認します。まず列を消すのではなく、原因になる余白や部品を特定してください。
縦方向の余白と改ページも確認する
不要な改ページコントロールやセクションの[改ページ]設定があると、想定より多くページが出ることがあります。グループを同じページにまとめる設定も、残りの紙面に収まらなければ空きを生みます。幅の問題を直しても改善しない場合に、これらを順に調べます。
| 症状 | まず見る場所 | 修正後の確認 |
|---|---|---|
| 右側の列が欠ける | 用紙の向き・左右余白・レポート幅 | 全列が読めるか |
| 交互に空白ページが入る | 右端の線やラベル・レポート幅 | 最終ページまで余分な紙がないか |
| 行の途中で文字が欠ける | テキストボックスの幅・高さ・印刷時拡張 | 最長の文字列が読めるか |
| 途中に大きな空白がある | 改ページ・グループのまとまり | まとまりと紙面効率が適切か |

8. 出力前の確認とまとめ
表形式レポートを仕上げるには、見た目、対象データ、印刷結果を一緒に確かめます。元クエリと件数が一致していても、受注明細の行数を顧客数として説明していたら誤解が生まれます。帳票名や件数のラベルも、集計した単位に合わせてください。
1. 元クエリと先頭・末尾のレコード、対象期間、抽出件数を照合します。
2. 最長の文字列、未入力、最大金額を含む行で文字切れを確認します。
3. 2ページ目以降にも必要な列見出しがあるかを確認します。
4. 小さなサンプルで件数・小計・総合計を別計算し、式の範囲を確認します。
5. 印刷プレビューに加え、PDFと実際に使用するプリンターで出力を確認します。
表形式は一覧を読みやすくする配置です。最初に1行の意味を決め、クエリを整えてから列見出しと明細を配置する順序なら、重複や集計違いを早い段階で発見できます。運用後に列を追加するときも、幅と改ページの確認をセットで行いましょう。

よくある質問
同じではありません。データシートはテーブルやクエリの内容を行と列で確認する画面です。表形式レポートは、そのような一覧を印刷・PDF出力しやすく配置したものです。レポートでは用紙や余白、ページ番号、繰り返す見出し、小計などを設計できます。入力や修正が目的ならフォームを使い、配布・保管する一覧が目的ならレポートを使うと役割が明確です。見た目が似ていても、編集画面と印刷物では確認すべき項目が異なります。
変更できますが、まずレポートをコピーして別名で作業してください。デザインビューで列見出しをページヘッダーへまとめ、詳細のテキストボックスを横に並べ、詳細領域の高さを縮めます。部品が一緒に動く場合はコントロールレイアウトを確認します。変更後は元のレコードソースや計算式を保てているか、件数と印刷結果で比較します。項目が多い帳票では、新しく一覧用レポートを作り直すほうが調整しやすい場合もあります。
一般的な一覧では、顧客名や金額などの列見出しをページヘッダーへ置きます。レポートヘッダーは冒頭用なので、そこだけに置くと各ページの見出しとして使えません。グループごとに異なる見出しが必要な場合は、グループヘッダーの繰り返し設定も検討します。設定後は1ページ目だけで判断せず、2ページ目とグループの途中で改ページした箇所を確認してください。見出しの位置が各列のデータと一致していることも大切です。
よくある原因は、レポートの幅と左右余白の合計が用紙幅を超えていることです。表が収まって見えても、右端に残った線やラベルが原因になる場合があります。用紙の向きとサイズを確認し、一番右の部品、レポート自体の幅、余白の順に調べます。幅に問題がなければ改ページやグループの設定も確認してください。修正後は全ページのプレビューと使用するプリンターの出力を比較し、文字を小さくしすぎず読める状態に整えます。
テーブルを開いたときの表示順が、そのままレポートの印刷順になる保証はありません。レポートのグループ化と並べ替えで、地域、顧客名、顧客IDなどの順序を明示してください。同じ値が複数ある項目だけで並べると、その中の順序が安定しない場合があります。最後に一意のIDを加えると再出力時も比較しやすくなります。並び順を変えた後は、グループの小計が正しい範囲で表示されるか、先頭と末尾のレコードで確認しましょう。
表示できます。部署ごとの小計なら部署のグループフッター、全体の総合計ならレポートフッターに集計用テキストボックスを置きます。売上金額が元データの数値フィールドなら、どちらも=Sum([売上金額])という式を使えますが、配置した領域によって対象範囲が変わります。ページフッターはページ別のSumを計算する場所ではありません。まず少数の明細で部署別と全体を手計算し、元データの重複がないかも確認してください。
最初にレコードソースのクエリを開き、同じ顧客が何行あるかを調べます。顧客と受注を結合していると、受注の件数だけ顧客情報が繰り返されることがあります。顧客1件で1行にしたいなら顧客だけを対象にするか、受注情報を顧客単位に集計してから結合します。単に重複非表示を使っても元の行数や合計は変わりません。表示を隠す前に一覧の1行が何を表すかを決め、件数と集計がその単位に一致する形へクエリを整えてください。
設定変更の影響範囲を判断できない場合は
共有データや既存の計算式まで影響する場合は、症状・対象画面・期待する結果を整理してAccessの教科書へご相談ください。データの持ち方と表示・集計の設定を分けて確認すると、必要な改修範囲を検討しやすくなります。
関連記事
参考情報
Microsoft 基本レポートの作成とセクション
https://support.microsoft.com/en-us/access/create-a-simple-report
Microsoft レポートの設計ガイド
https://support.microsoft.com/en-us/access/guide-to-designing-reports
Microsoft レポート内の集計
https://support.microsoft.com/en-us/access/summing-in-reports
Microsoft ForceNewPageプロパティ
https://learn.microsoft.com/en-us/office/vba/api/access.section.forcenewpage