• ベストアンサー

アクセス サブフォームのレコードの値が変更したら

フォームの中にテーブルに基づいたサブフォームを入れています。 サブフォームはデータシートビューで表示しています。 そのサブフォームのレコードの値が変わったら msgboxを表示させるにはどのイベントで行なえば良いですか? サーブフォームのコントロールに Private Sub ページ名_AfterUpdate() MsgBox "" End Sub としたら確かにメッセージボックスは表示されるのですが 全てのコントロールにつけないとだめですか? 「サブフォームのレコードの値が変更したら」 とするにはどうすればいいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

あなたの考える 「サブフォームのレコードの値が変更したら」 というのがどのタイミングのことなのか次第です。 全てのコントロールにおいて、値が変更されたら、メッセージを表示したいのなら、すべてのコントロールの更新後処理に必要になります。 レコード移動して、どこかのコントロールで最初に入力して変更した時なら、フォームのダーティ時です。 レコードで入力してからレコード保存する直前なら、フォームの更新前処理です。 何の目的でそのようなことがしたいのでしょうか。 そもそも、メッセージボックスを表示するというのが、その目的に合致しているのか疑問です。(入力中にメッセージボックスがでるのは鬱陶しいですよ) そのレコードが編集中だということを明確にしたいのなら、データシートビューなら左端のレコードセレクターに鉛筆マークが出るので分かります。

ulgnucov
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう