[HOME] > 「Access マクロ&VBA 開発工房」 サポートページ

  2-4 メッセージボックスを使って在庫を確認する 集計クエリについて(Q_在庫一覧)
第2章-4「メッセージボックスを使って在庫を確認する」で作成するクエリ「Q_在庫一覧」についてご指摘がありました。
(104ページ〜)
基本的な在庫の考え方は、「Q_在庫一覧」の構造の通りなのですが、今回のように、「入庫明細テーブル」と「明細テーブル」のデータがお互いに「一対多」になりえる場合、このクエリでは正しい結果を得ることが出来なくなってしまいます。
単に「明細テーブル」と「商品マスタ」を結合させただけでは、同じ商品を何度も注文するとその回数分、入庫数が直積されてしまうのです。
残念ながらクエリではどうすることもできないので、予め「明細テーブル」と「入庫明細テーブル」を集計したクエリを用意し、このふたつのクエリと「商品マスタ」を結びつけて、「Q_在庫一覧」を作成してください。
ご迷惑をおかけして申し訳ありませんでした。



sample2_4_before.mdb
「Q_集計_入庫数」 「Q_集計_売上明細」という名前で、集計クエリを作成してあります。
(入庫テーブル、入庫明細テーブルも用意してあります)
105ページ [2] の操作で、「明細テーブル」「入庫明細テーブル」の代わりに使用してください。


上記のクエリを作成済みのmdbファイルもございます。参考にしてください。
sample2_4_after.mdb


●ダウンロードできない場合は・・・
オフィスや学校などのクライアントPCからアクセスいただいている場合で、セキュリティの規制などの理由でファイルのダウンロードができないときは・・・。
クエリのデザインを図にいたしました。
クエリの名前は、分かりやすいものであれば何でもOKです。
作成したクエリをそれぞれ、「入庫明細テーブル」「明細テーブル」の代わりに使用して、105ページ〜の「Q_在庫一覧」クエリを作成してみてください。
参考いただければ幸いです。


「Q_集計_入庫数」 クエリ


「Q_集計_売上明細」 クエリ



[HOME] > 「Access マクロ&VBA 開発工房」 サポートページ