- ベストアンサー
Accessのクエリで累計の出し方
Accessのクエリで累計の出し方を教えてください。 できれば、クエリで関数による算出方法、クエリでの算出が無理であれば、 VBAでの算出方法を詳しく教えて頂けないでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> | A | B | C > ---------------------------------- > 1行目|1月1日|1000円 | 1000 > 2行目|1月2日|1500円 | 2500 > 3行目|1月3日|2000円 | 4500 これだけのフィールドでは、ちょっと難しいですね。 連番(オートナンバー)のフィールドがあれば、可能だと思います。 #同じ日でも、優先順位がハッキリわかるフィールドがあるのなら、 オートナンバーでなくてもかまわないです。 C:DSum("B","テーブル名","A<=#" & [A] & "#") 同じ日付がないのなら、↑でも大丈夫だと思います。
その他の回答 (2)
- O_cyan
- ベストアンサー率59% (745/1260)
>クエリで累計の出し方 というのはクエリの各フィールドの合計のことなのでしょうか?例えばクエリにA・B・Cとあってその合計を出したい? それなら単純に合計フィールドを作り[A]+[B]+[C]で出来ますが。フィールドにNullを含むようであればNz関数を使って加算すれば出来ます。 そうではなく1フィールドの累計。例えばフィールドAの合計を出すにはグループ化(集計)しないと出来ません。 1つの選択クエリ内でフィールドの累計を別のフィールドには演算できません。フィールドをグループ化し合計させたクエリを別に作りそのクエリを選択クエリにテーブル追加し累計のフィールドを追加し表示させることは可能です。
補足
ご回答ありがとうございます。 申し訳ありませんが、グループ化し合計させるのではないのです。 説明が悪くてすみません。 クエリを実行させた後の完成表をエクセルに置き換えてご説明します。 累計→残高とします。 横列Aに日付、B列に金額 C列に残高 | A | B | C ---------------------------------- 1行目|1月1日|1000円 | 1000 2行目|1月2日|1500円 | 2500 3行目|1月3日|2000円 | 4500 : : というように、前行のCの値にBの値を加算したものをCに表す。 これをクエリで実行させたいのです。 よろしくおねがいいたします。
- jazzkazz
- ベストアンサー率37% (114/308)
詳細が理解できませんが、 おそらくやりたい事はクエリ画面で 1.メニューバー[表示]-[集計]を選択 2.クエリに表示された集計行に累計を取りたいフィールドに【合計】を設定 3.グループ単位による累計を取る場合はグループにしたいフィールドを設定し、集計行に【グループ化】を設定 以上のようにすればよいかと思います。
補足
すみません。 私の、質問の仕方が悪かったようです・・・。 クエリで、数値の計算をさせる際、累計の列を設けて数値を1行ごとに加算し、最後に総計が算出される方法を教えてください。
お礼
ありがとうございました。 長い間、おかげで悩んでいた問題が解決しそうです。 ご丁寧な回答に大変感謝いたします。