プロが教える店舗&オフィスのセキュリティ対策術

Access2016の帳票フォームで有効期限フィールドに入力されている日付を1年後に更新できるようにしたいです。更新するのは1レコードまたは複数レコードを同時にできるとうれしいです。最悪でも1レコードごとに更新できるようにしたいです。
理想としてはフォーム上で作成した「1年後」というボタンをクリックすると、該当レコードの有効日付フィールドに入力されている日付が1年後に更新されるようにしたいです。

更新クエリ・フォームは作成済ですが、「1年後」というボタンをクリックしたときに更新クエリが機能する方法ができません。マクロorVBAを使うと思いますができればマクロでできるようにしたいです。フォーム名は:F_通門証  クエリ名はQ_有効期限の更新 になります。

わかる方がいましたら教えてください。よろしくお願いします。

A 回答 (2件)

>すべてのレコードの日付が更新されてしまいました。


それは更新クエリの作り方の問題ですね。
必要なレコードだけが更新されるよう、抽出条件を設定して下さいね。

変更したデータを現在開いているうフォームにも反映させたいときは、マクロの「再クエリ」を使ってください。
    • good
    • 0
この回答へのお礼

なるほど、そういうことでしたか。理解しました。
クエリにパラメーターの設定を加えたらできました。
ちなみにクエリを更新クエリから普通のクエリに変更してフォーム上で有効期限の日付を更新する設定をすることは可能でしょうか?

お礼日時:2021/09/17 11:49

更新クエリはマクロの「クエリを開く」で実行できます。


それをフォームの該当ボタンのクリック時に設定すればできると思いますよ。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
無事日付を更新することはできましたが、すべてのレコードの日付が更新されてしまいました。フォーム上の有効期限フィールドの日付も更新されておらずテーブルの日付はちゃんと更新されていました。
フォームに表示されているレコードのみ更新するにはどうすればいいでしょうか?また、単票フォームで作成することになりました。

お礼日時:2021/09/17 11:02

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

このQ&Aを見た人はこんなQ&Aも見ています