MS Access Tips/Sample and VBA and Blog customize etc...

グループの最後のページのフッタにだけ表示する

レポートでグループ化してグループフッターで改ページしています。一グループは複数ページにわたる場合もあります。グループの最後のページのフッターにだけ、グループ名やグループ計を表示したいのですが、どうしたらよいでしょうか。VBAは苦手なので、VBAを使わずにできるといいのですが。

下記で紹介したVBAを使えば、グループ毎のページ数を取得できるので可能なのですが、

グループ毎に Page/Pages 形式のページ数を表示する

VBAは使わずに実現したいのですね。

ご安心ください。ページフッタに表示するのなら、VBAを使わなくても簡単に実現できます。

難易度:

レポートのレコードソースの主キーフィールド名を「ID」、集計するフィールド名を「個数」と仮定します。

グループヘッダーにテキストボックスを2つ配置して、下記のように設定します。

 
プロパティ 設定値
コントロールソース =Last([ID])
可視 いいえ
名前 LastID
 
プロパティ 設定値
コントロールソース =Sum([個数])
可視 いいえ
名前 Sum個数

ページフッターにテキストボックスを2つ配置して、下記のように設定します。

 
プロパティ 設定値
コントロールソース =IIf([ID]=[LastID]),[グループ名],Null)
可視 はい
 
プロパティ 設定値
コントロールソース =IIf([ID]=[LastID],[Sum個数],Null)
可視 はい

解説

グループヘッダーで Last関数でグループ最後の主キーの値を取得します。

ページフッタで、この最終値と現在の主キーの値を比較して一致したら、グループの最後と判断できますので、IIf関数で表示、非表示を切り替えます。

拍手する

Leave a reply






Trackbacks

trackback URL
http://hatenachips.blog34.fc2.com/tb.php/272-4251a2b5
該当の記事は見つかりませんでした。