- ベストアンサー
ACCESSのレポートに売上の累計を計算させましたが・・・・
ACCESS2002についてです。 テーブルに"売上日" "売上金額"とある中で"売上累計"を明細行毎にだそうと、本に書いてある下記のように入力しましたが、ページが変わってしまうと"売上累計"が合わなくなってしまいます。どうしたら解決できますか???? Option Compare Database Option Explicit Private curRuikei As Currency Private Sub Report_Open(Cancel As Integer) End Sub Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer) '累計のクリア curRuikei = 0 End Sub Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer) '累計の加算 curRuikei = curRuikei + Me!売上金額 Me!売上累計 = curRuikei End Sub です。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
レポートのフォーマットというのは ページ内に収まるかどうかを調べるために一度フォーマットしてみて 収まらないと分かるとやりなおすというように 結構複雑な処理をしています つまりフォーマットというのは必ず1回行われるというものではないのです アップされたコードのようにフォーマットするたびに加算していたのでは 結果が狂ってくるのは当然ですね FormatCountが1のときだけ加算するようにすれば逃げられるかも分かりませんが ちょっと自信ないです それよりレポートなら[集計実行]という機能がありますから 売上をもうひとつ置き、2つ目の[集計実行]を[全体]とするだけでいいのでは
その他の回答 (2)
- bonaron
- ベストアンサー率64% (482/745)
[売上累計] の 「コントロールソース」 を [売上金額] の 「コントロールソース」 と同じにします。 [売上累計] の 「集計実行」 を 「全体」 にします。 以上で出来ます。 VBA は必要ありません。
お礼
納得できました。 有難うございました。
>"売上累計"を明細行毎にだそうと の意味が良く判りませんがMS-ACCESSならば ・グループフッター ・Sum 関数 などを使用すれば、もっと楽にできるのではと考えます。
お礼
有難うございます。 早速試してみます。