続けてのご質問、失礼いたします。
更新したいテーブルは以下のような構造になっています。
テーブル名:出荷関連受注データ
受注番号 商品ID 価格 個数 支払ID
11111 E1513 ¥2,500 4 2
22222 E1513 ¥2,500 2 2
22222 K1158 ¥1,120 6 2
33333 E1513 ¥2,500 3 2
44444 E1513 ¥2,500 5 2
55555 E1513 ¥2,500 2 2
55555 K1158 ¥1,120 2 2
55555 P5310 ¥4,250 1 2
受注番号単位で商品の価格と個数をそれぞれ合計し、
¥10,000未満であれば、支払IDを3に、
それ以上であれば、支払IDを4にする更新クエリ(SQL)を作成したいと思っています。
例のごとく更新のため集計クエリが使えないので、
DSUMで1万円未満と以上を別の更新クエリにし、以下のようなSQLをVBAで走らせてみましたが、
個数をどこに挟み込めばいいのか分からない上、そもそもこの路線で合っているのかすら怪しいです。
VBA
1 ’¥10,000未満だった場合 2 strSQL = "UPDATE 出荷関連受注データ" _ 3 & " SET 出荷関連受注データ.支払ID = 3" _ 4 & " WHERE (((DSum('価格','出荷関連受注データ','受注番号=' & [受注番号])<10000));" 5 6 Debug.Print strSQL 7 Set qdf = CurrentDb.CreateQueryDef("", strSQL) 8 qdf.Execute 9 Set qdf = Nothing
価格と個数を個別に紐づけて乗算しなければならないのは理解できるのですが
最終的に受注番号単位でさらに合計するのがとても難しいです。
上記のコードでは、個数の組み込み方が分からないので
受注番号単位でDSUMをかけているだけのものです。
すべてをいっぺんに可能にする良い方法はありますでしょうか。
どうかお力添えをお願いいたします。
回答1件
あなたの回答
tips
プレビュー