質問: ★アクセス2000★条件付き合計金額の出し方 請求書をメインフォームとサブフォームで作っています。 サブフォームは、「商品id」「商品名」「課税区分」「単価」「金額」からなり、受注明細を入力しています。 商品は2つに分類され(a・b)、それぞれの合計金額を計算したいのですが、どうやったらいいのか分からないので、ご回答をお願いします。 分類の仕方ですが a⇒「商品id」 0001~0100 b⇒「商品id」 0101~0200 です。 そしてもう1つ、消費税の計算もうまくできません。 「課税区分」には 課税 ⇒1 非課税⇒2 と入力してあります。 どなたかご回答をお願い致します。
回答: 最初に、サブフォームに使っている「商品id」「商品名」等は テーブルを元にしているんですよね? ここでは「商品テーブル」というテーブルがあるとしておきます。 まず合計ですが、dsum関数を使ってはどうでしょうか? 合計金額を格納する変数、lngtotala,lngtotalbがあるとします。 lngtotala = dsum("金額","商品テーブル","商品id >= '0001' and 商品id <= '0100') lngtotalb = dsum("金額","商品テーブル","商品id >= '0101' and 商品id <= '0200') これでそれぞれの合計が変数に格納されるはずです。 最後の引数が対象を絞る条件になっているので、ここを変更すれば例えばcという分類ができても対応できると思います。 次に消費税ですが、以下の通りでできると思います。 iif(nz([課税区分],0) = 1,nz([金額],0) * 0.05,0) 課税区分が 1 であれば、金額に0.05をかけて消費税を算出、 それ以外であれば、0 を返すようにしています。