人生で一番思い出に残ってる靴

メイン/サブフォームで、メインには「顧客テーブル」を置き[更新繰越][繰越]フィールドがあり、サブには月別抽出で「入金クエリ」からの[入金合計]と日別抽出で「請求クエリ」から[請求合計]を基にメインに[現在繰越]を計算させます。[現在繰越]をマクロの「値の代入」で[更新繰越]に書き込みたいのです。※[繰越]に書き込みますと[繰越]から[入金合計]をマイナスし[請求合計]をプラスさせる計算をして[現在繰越]を出していますので[繰越]が更新されますと重複された計算がされてしまうことと印刷時に[繰越]の数字が計算されたものになってしまうため一旦[更新繰越]に入れておき後でUPDATEで[更新繰越]を[繰越]にするようにしています。
メイン/サブフォームを表示させ、マクロのアクションボタンをクリックし「値の代入」を実行させますと、フォームの[現在繰越]はカレントレコードの[更新繰越]に書き込まれます。しかし、「顧客テーブル」のレコードが複数ありますが全レコードには書き込まれていません。
「値の代入」の後「次のレコード」へ移動し「値の代入」をし「次のレコード」へ移動をレコード数分繰り返し記述しましたが全レコードに書き込まれはしますが、どこから引っ張ってきたか判らない各レコードの[繰越]データになってしまいます。
マクロの記述で適当なレコードの[現在繰越]を数字に変更してみますとそれに変更されますので、「値の代入」は機能しているようですが、[現在繰越]のデータが[繰越]になっているようです。
カレントレコード1件なら機能するのが、全レコード対象では上手く機能しないことが判りません。「オブジェクトの再描画」を挿入してみたりもしましたが駄目でした。
マクロまでは分かりますがVBAは良く分かりません。マクロではこの処理は出来ないのでしょうか?

A 回答 (2件)

全レコードには反映されないと思いますよ?させるなら更新クエリになると思います。



まず、いろんなことを一度にやり過ぎて問題がボヤけてしまっています。
単機能ごとに試行錯誤してみてください。

あと、マクロ使うくらいならVBA覚えた方が後々楽です。
    • good
    • 0
この回答へのお礼

早速、回答をいただきましてありがとうございます。おしゃいますように更新クエリで行おうとしましたら、やはり[現在繰越]をどう[更新繰越]に書き込むかで引っかかってしまいました。もう一度単機能ごとに検証をしてみます。
前回マクロで全てのことが出来てしまったので、VBAまで進まなかったことがいけませんでした。

お礼日時:2016/06/21 09:01
    • good
    • 0
この回答へのお礼

ありがとうございました。
回答者「くんこば」さんが言われるようにVBAを勉強した方が良いのかと思います。

お礼日時:2016/06/21 15:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す