• ベストアンサー

[MS Access]クエリで合計金額を出したい

初歩的な質問ですみません。 以下のようなテーブルがあります。 名 前 | 請求1 | 請求2 | 割引 | Aさん | \10000| \3000 | \1000 | Bさん | \5000 | \3000 |  | Cさん | \7000 |    | \1000| クエリで、合計額を出したいのです。 フィールドに、 [請求1]+[請求2]-[割引] とすると、全て数字が入っているAさんのみしかでません。 空白を\0とみなして、合計額がでると思ったのですが、そのようにできますでしょうか? お手数ですが、宜しくお願い致します。 MS Access 2003です。

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

  • ベストアンサー
  • rakudan
  • ベストアンサー率80% (4/5)
回答No.2

こんな感じですか iif(isnull([請求1]),0,[請求1]) +iif(isnull([請求1]),0,[請求2]) -iif(isnull([請求1]),0,[割引])

wdwdwd
質問者

お礼

的確な回答有難うございました。 今試しましたが、この方法が良いみたいです。 合計額も、通貨として、表示されました。 ありがとうございました。

その他の回答 (4)

  • gosuke32
  • ベストアンサー率29% (36/124)
回答No.5

もしかして、テーブル構造で「請求1」「請求2」「割引」のデータ形式、「テキスト形式」になってませんか? そこを「数値型」もしくは「通貨型」に変更するだけで良いような気がします。 合計金額だけでなく、集計演算をするときにも、Nullは支障がありますので、変えてた方が良いと思います。 違ってたら、ごめんなさい。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.4

=Nz([請求1])+Nz([請求2])-Nz([割引]) で演算でします。

wdwdwd
質問者

補足

的確な回答有難うございました。 できましたら、もう1つだけお聞きしたいです。 =Nz([請求1])+Nz([請求2])-Nz([割引]) 演算結果に間違いはないのですが、書式が通貨にならないのは、やむを得ないのでしょうか。 合計だけ、\マークと、,(カンマ)が入らないものですから、請求書などに、差し込む際に、体裁がうまくいきません。 もし、ご存知であれば、ご指南頂けると幸いです。

  • wandayu
  • ベストアンサー率24% (24/99)
回答No.3

面倒ですが計算する値がそれぞれNullや空白ならばゼロとするように変えればよいと思います if([請求1] is Null,0,[請求1]) 上記のようにすれば Nullのときはゼロになりそれ以外のときは請求1の値 となります。応用すればあらかじめ入ってる空白などでも 対応できます。 同様に請求2、割引もやってあげればよいともいます ただ記述が長くなるのが難点かな 一番楽なのは他の方が言うように空白のところに はじめからゼロを入れるようにすればよいと思います。

  • beans9931
  • ベストアンサー率30% (7/23)
回答No.1

空欄に0を入れるとまずいのでしょうか?・・・

関連するQ&A