複数のテーブルの値を集計する~DSUM関数

Pocket

複数のテーブルのデータを一つにまとめる場合にもDSUM関数が便利です。

例えばこのように複数のテーブルから、工事NO毎に金額を集計しようとします。
2802061
集計クエリでテーブル毎に工事NO毎に金額を集計して、そのクエリを更に工事NO
毎に集計するという方法もなきにしも非ずですが、あまりいい方法ではありません。

そんなときはDSUM関数を使います。
作業費: Int(DSum(“金額”,”T作業”,”工事NO='” & [工事NO] & “‘”))/1
このような数式を集計するテーブル毎にフィールドに設定していきます。
2802062
INT関数でくくり、更に1で割るということをしていますが、するしないの
違いは下の図のとおり。
2802063
数字が右に寄っているのは数値型、左に寄っているのはテキスト型です。
普通にDSUM関数で集計しただけではテキスト型になってしまうので、それを
数値型に変換しています。
抽出条件の工事NOはテキスト型に設定してあるので、ダブルコーテーションの間
にシングルコーテーションを挟みます。

リース料: Int(DSum(“金額”,”Tリース”,”工事NO='” & [工事NO] & “‘”))/1
回送費: Int(DSum(“回送費”,”T回送”,”工事NO='” & [工事NO] & “‘”))/1
こんな感じでテーブルの数だけフィールドを増やしていきます。

===================================
最近お世話になった人に昨日は9枚お礼状を書きました。
デジタル全盛の中、あえて手紙で直筆でお礼を伝えること
もとても大事なことだと思います。

本日も最後までお読み頂きありがとうございます。