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

執筆者:

関連記事

Accessのフォームをデザインしようとすると固まる

タイミングとしては、フォームをデザインビューにした直後、プロパティシートをクリックしたとき。それだけで数十秒待たされる。 原因は、なんとなく、気が付いている。 ついさっき、フォームで使っているクエリに …

no image

ExcelからAccessの外部データの取り込みでトラブル

ExcelからAccessのクエリを使いたいとき、データ接続途中の「テーブルの選択」ウィンドウに、使いたいクエリが表示されない。 ウィンドウ内には、Accessにあるはずのクエリがあったりなかったり。 …

no image

「抽出条件 フォーム access not in クエリ」とか「forms access in 抽出条件 複数」とかでググっても出てこなかったので、メモ

Accessでフォームからクエリに抽出条件をパラメータで渡すやり方が分からなくて、数時間苦労。 このタイトルがGoogleの肥やしになって、このサイトに来てくれる人が増えれば。。。 要するに私がやりた …

no image

Accessで DoCmd.RunSQL を CurrentDb.Executeにしたら、1秒高速化した

処理が遅いので速くして欲しいとの要望があったので、コードを調査。 DoCmd.RunSQL を CurrentDb.Execute に置き換えると非同期で実行されるとの情報を得たので、試す。 結果、6 …

Accessのオブジェクトをデスクトップに作っておくと超便利

結構、知らない人が多いんじゃないかな。 クエリとか、フォームへの直接のリンクを、PCのデスクトップに作れること。 ユーザーがたくさんいて、その中の一部の人には、閲覧はして欲しいけど、編集はして欲しくな …