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

AccessでコンボボックスのリストをVBAで行番号で選択する

こんな方法があるのは知らなかった。 メモメモ。 ‘コンボボックスの1行目を選択する ‘Forms!見積請求書F.cbo銀行振込先 = Forms!見積請求書F.cbo銀行振込先.ItemData(0) …

no image

AccessでNot in だと Null が抽出されないのは

以下のページに詳しく。 ACCESS クエリ 条件以外のレコードを抽出するには? – Access(アクセス) 解決済 | 教えて!goo <http://oshiete.goo.n …

no image

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

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

no image

VBAで忘れてしまっていたことと、知らなかったこと

STOPステートメント: ブレークポイントを設定しないでもその行でコード処理を止めることができるので、Access終了->Access起動といったシチュエーションで使える。 Randomizeステート …

no image

Accessで実行時エラー’2465′ 指定した式で参照されている’txt区分’フィールドが見つかりません

VBAでフォームをMe.RecalcあるいはMe.Requeryしただけで、タイトルのエラーが出るケースに遭遇。F9キーを押すと同じ動作になるはずだが、キー押下では上記エラーは出ず、不思議。 ネット検 …