レポートのデザインビューでいうと上から、レポートヘッダー、ページヘッダー、グループヘッダー、詳細、グループフッター、ページフッター、レポートフッター・・・というような、結構細かいレポートを作っている。
以下を参考に、出力対象が1件であろうが10件であろうが、罫線を10本分引いてくれるレポートにしようとしているのだが。
レコードがない場合も用紙の最後まで罫線を出力する NextRecord版 – hatena chips
しかし、客先の環境のせいなのかわからないが、出力対象が1件であっても、ページヘッダーが2ページ以降に出てしまう。
ものすごくはまった。
数日間、悩んだ。
で、最終的にはやっとわかったのだが、
1.グループフッターの改ページが「カレントセクションの前」にしていた。これを「しない」に変更。
2.参考サイトで公開しているコードの「Private Sub グループフッター1_Format」イベントの「Me.グループフッター1.ForceNewPage = 2 ‘カレントセクションの後で改ページ」の行を削除した。
改ページのコントロールはこの場面では不要な気がするんだけど、どうなんだろうなあ(参考WEBの管理人さんはあまりにも凄腕なので、なにか思惑があってこうしたのだろうが)。
自分の場合は、これで解決した。。。他の人はどうなのかわからんけど、参考になればしてください。
ちなみに、今回のトラブルは原因を見つけるのに大分苦労した。こちらも私の苦労をせずに済む人がいれば、参考になればとメモ。
トラブル 原因の見つけ方の検討:
・ページヘッダーや詳細に背景色(赤とか青とか目立つ色)を設定してプレビュー時の色を見てどこが影響しているのかあたりをつける。
・余白調整(余白が原因のことも)
・客先のプリンタのドライバーをインストールしてみる(機種により余白がちがったりすることも)。
・NoData時に、どのように表示されるかをチェック。
・ページ幅を広げてみる。又は狭めてみる(A4用紙の幅をはみ出していることが)。
・コードをすべてコメントまたは削除してみる(プログラムとそれ以外の切り分け)。
・印刷時に自動拡張されるコントロールは無いかチェック(はみ出る一因になっていないか)。
・プロパティの改ページ設定(セクションの前後)チェック(一番怪しい?)。