- ベストアンサー
Accessのクエリによる集計が出来ない
- AccessのクエリでテーブルCの商品連番に紐ついたテーブルDの発送個数の合計値を集計する方法についてアドバイスをお願いします。
- Accessのクエリでデータベースの構造に基づき、テーブルCの商品連番ごとに紐ついたテーブルDの発送個数を合計する方法についてアドバイスをお願いします。
- AccessのクエリでテーブルCの商品連番に関連するテーブルDの発送個数を集計する方法についてアドバイスをお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
すみません、引用された質問 http://okwave.jp/qa/q5549286.html の回答者です。 そちらへの回答を作成していたんですが、間に合いませんでした(汗) > 教えていただいた方法は、合計集計できないのでしょうか?? すみません、質問文の > 現状では、テーブルDのデータしかテーブルCのレコードが表示されません。。。。 から、演算フィールド部分は作成済みと思い込みました(汗) 演算フィールドについても、「テーブルDにレコードがない場合への対応」の組み込みが 必要だったんですが、そこまで気が回りませんでした(汗) 失礼しました。 「→」型の結合線で、矢印の先側(今回の例ではテーブルD)にレコードがない場合、 フィールドの値は「Null」になります。 Nullと数値の加減乗除、或いは「=」での数値との比較は、いずれも演算結果として 「Null」が返されます。 http://oshiete1.goo.ne.jp/qa4850675.html このため、テーブルDにレコードがない場合、演算結果は空白表示になってしまいます。 これを回避するには、Nz関数を使用して「0」に変換してやります。 【例】クエリのデザインビューでの『フィールド』の値・式 <現状> 発送個数 出品在庫数: [出品数量]-[発送個数] <変更後> 発送個数合計: Nz([発送個数], 0) 出品在庫数: Nz([出品数量], 0)-Nz([発送個数], 0) ※複数のテーブルでフィールド名が重複する場合は、以下のように「[Table]![Field]」と いう形にする必要がありますので、参考まで: 発送個数合計: Nz([テーブルD]![発送個数], 0) 出品在庫数: Nz([テーブルC]![出品数量], 0)-Nz([テーブルD]![発送個数], 0) ・・・以上です。
お礼
DexMachinaさん kamuycikapです。 詳細な回答を頂ありがとうございました。 無事に、目的の処理を導入する事が出来ました。 慣れないAccessに悪戦苦闘しており、頂いた情報は今後の処理についても非常に有用な情報です。 丁寧に回答いただき、非常に感謝しております。