MS Access

Accessの複雑な処理のレポート帳票で1ページのみ出力されるはずが2ページ目になぜかページヘッダーが出るトラブルに見舞われ

投稿日:

レポートのデザインビューでいうと上から、レポートヘッダー、ページヘッダー、グループヘッダー、詳細、グループフッター、ページフッター、レポートフッター・・・というような、結構細かいレポートを作っている。

以下を参考に、出力対象が1件であろうが10件であろうが、罫線を10本分引いてくれるレポートにしようとしているのだが。

レコードがない場合も用紙の最後まで罫線を出力する NextRecord版 – hatena chips

しかし、客先の環境のせいなのかわからないが、出力対象が1件であっても、ページヘッダーが2ページ以降に出てしまう。

ものすごくはまった。
数日間、悩んだ。

で、最終的にはやっとわかったのだが、

1.グループフッターの改ページが「カレントセクションの前」にしていた。これを「しない」に変更。

2.参考サイトで公開しているコードの「Private Sub グループフッター1_Format」イベントの「Me.グループフッター1.ForceNewPage = 2  ‘カレントセクションの後で改ページ」の行を削除した。
改ページのコントロールはこの場面では不要な気がするんだけど、どうなんだろうなあ(参考WEBの管理人さんはあまりにも凄腕なので、なにか思惑があってこうしたのだろうが)。

自分の場合は、これで解決した。。。他の人はどうなのかわからんけど、参考になればしてください。

ちなみに、今回のトラブルは原因を見つけるのに大分苦労した。こちらも私の苦労をせずに済む人がいれば、参考になればとメモ。

 

トラブル 原因の見つけ方の検討:

・ページヘッダーや詳細に背景色(赤とか青とか目立つ色)を設定してプレビュー時の色を見てどこが影響しているのかあたりをつける。

・余白調整(余白が原因のことも)

・客先のプリンタのドライバーをインストールしてみる(機種により余白がちがったりすることも)。

・NoData時に、どのように表示されるかをチェック。

・ページ幅を広げてみる。又は狭めてみる(A4用紙の幅をはみ出していることが)。

・コードをすべてコメントまたは削除してみる(プログラムとそれ以外の切り分け)。

・印刷時に自動拡張されるコントロールは無いかチェック(はみ出る一因になっていないか)。

・プロパティの改ページ設定(セクションの前後)チェック(一番怪しい?)。

-MS Access

執筆者:

関連記事

no image

SqlServerにAccessでいうオートナンバー型をつける

テストデータを作るために、Accessで2万件ほどのデータを用意し、別途追加クエリを作って、ODBC接続したSqlServerに追加しようとしたところ、「型変換エラーがどうのこうので追加出来ない」との …

FileMakerで画像ファイルを一括インポート

私はAccessとの付き合いが長いので推しソフトなのだが、FileMakerはAccessに無い機能や表示が多いうえ、デザインの自由度になるとAccessを凌駕するので、まったく侮れない。 最近、Fi …

no image

Accessでファイル選択ダイアログを開いて選択したExcelファイルの先頭シートを読み込み番号が一致するデータの配送日を本日日付で消し込む処理

ファイル選択ダイアログを開いて、選択したExcelファイルの先頭シートを読み込み、番号が一致するデータの配送日を本日日付で消し込む処理(楽天販売DB.mdb) ダイアログを表示する際には、事前にMic …

no image

Accessであらかじめリンクテーブルを開いておくと劇的に高速化

リンクテーブルに対して「Dlookupで値を探して見つかったらCurrentDb.Execute UPDATE~ で値を更新」という処理をループで回している。 この処理、一旦始めると、終えるのに30分 …

no image

AccessからExcelフォーマットでファイルに出力するサンプルコード

Excelから外部データの接続の際に,ユーザー定義関数を含んだクエリを指定するとエラーになったので、こんなやり方で対処。 Private Sub btnB2_Click() DoCmd.OutputT …