• ベストアンサー

ACCESS レポートでグループごとのページ数表示

ACCESS2000で、レポートにページ数を表示させたいのですが、現在グループごとの改ページを設定してまして、設定したグループごとのページの総数と現在のページ数を表示させたいのですが、可能でしょうか? イメージとしては、下記のとおりです。 1ページ目  グループ1  (1/2)  2ページ目  グループ1  (2/2) 3ページ目  グループ2  (1/1) 4ページ目  グループ3  (1/3) 5ページ目  グループ3  (2/3)        ・        ・        ・        ・ お手すきの方がおられましたら、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Te-Sho
  • ベストアンサー率52% (247/472)
回答No.1

VBAを使わないとちょっと難しいですね。 ロジックとしては。 レポートのクラスモジュールでグループ毎の総数とページ番号の変数を定義 dim page_count as long dim page_max as long グループヘッダのフォーマット時にそのグループ名でレコード件数を取得、1ページの最大件数で割る。 余りが有ったら割った数字に1を足す。 余りが無かったらその数字がグループ単位の総ページ数 ページ数に0をセット Private Sub グループヘッダー0_Format(Cancel As Integer, FormatCount As Integer) dim rec_count as long rec_count = DCount(expr, domain[, criteria]) if (rec_count mod 1ページの明細数) = 0 then page_max = rec_count / 1ページの明細数 else page_max = (rec_count / 1ページの明細数) + 1 end if page_count = 0 End Sub ページフッタ時にページ番号に1を足して総ページとともに編集して出力。 Private Sub ページフッターセクション_Format(Cancel As Integer, FormatCount As Integer) page_count = page_count + 1 me.コントロール名 = page_count & "/" & page_max End Sub こんな感じでしょうか。データが無いときやその他必要な処理は書き足してくださいね。 あとDcount関数はHelpからコピぺしただけですのでVBAのHelpを参照してください。

その他の回答 (1)

  • harumimi
  • ベストアンサー率46% (51/109)
回答No.2

マイクロソフトのサポート情報にも方法がありますので、そちらも参考にされてはいかがでしょうか? Access97になってますが2000でも大丈夫なはずです。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;JP407754