- 締切済み
Accessレポートで、ページが変わるごとに番号を1から始める。
レポートに番号をつけるためにフィールドを入れて、1ページ目から2ページ目など、 ページが変わったら、番号もまた1からつけるようにしたいのです。 このような場合はどのようにしたらいいでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- maruru01
- ベストアンサー率51% (1179/2272)
再びmaruru01です。 >でも1ページ目が「11」「12」・・と2桁になるのですが、どうしてでしょうか? ひょっとして、レポートの開くイベントで、 Counter = 1 のところが Counter = 11 になってるとか。
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 レポートの宣言部(Option Explicitのすぐ下)に、 Private Counter As Long レポートの開く(Open)イベントに、 Private Sub Report_Open(Cancel As Integer) Counter = 1 End Sub レポートのページフォーマット(Page)イベントに、 Private Sub Report_Page() Counter = 1 End Sub 番号を表示するテキストボックスをtxtNumber(非連結)とし、 レポート詳細セクションのフォーマット(Format)イベントに、 Private 詳細_Format(Cancel As Integer, FormatCount As Integer) Me!txtNumber.Value = Counter Counter = Counter + 1 End Sub 試してません。
お礼
いつもいつもありがとうございます。 無事実行できました。 でも1ページ目が「11」「12」・・と2桁になるのですが、どうしてでしょうか? 2枚目以降はちゃんと「1」「2」・・となっています。
- hamadaya
- ベストアンサー率0% (0/0)
行番号ということでしょうか? 以下のVBAを登録したら可能でしょう。 Dim tmp変数 As Long Private Sub ページヘッダー_Format(Cancel As Integer, FormatCount As Integer) tmp変数 = 0 End Sub Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer) tmp変数 = tmp変数 + 1 Me.t変数 = tmp変数 End Sub
お礼
回答ありがとうございます。 私の力不足で教えていただいたコードをどこにかけばいいのかわからなくて、 試すことができませんでした。 もう少し力がついたら試してみたいと思います。 ありがとうございました。
お礼
回答ありがとうございます。 開く時は Private Sub Report_Open(Cancel As Integer) Counter = 1 End Sub となっているみたいです。 ですのでちゃんと合っているとは思うのですが・・・。