Baseのフォームやコン
トロールのイベントに対して、マクロを設定できます。どのイベントがいつ発生するのかわからないと、マクロを作りようがないので、確認して見ました。確認方法は単純に、使えそうな各イベントに対して、Msgboxだけのマクロを設定するだけです。
操作 | 発生するイベント |
フォームを開く | ・フォームの「レコード置換前」イベント
・フォームの「レコード置換後」イベント |
次のレコードへ進む | ・フォームの「レコード置換前」イベント
(表示内容が変更される)
・フォームの「レコード置換後」イベント |
フィールド選択 | ・コントロールの「フォーカスを得た時」イベント |
フィールド変更せずに、
他のフィールドをクリック | ・コントロールの「フォーカスを失った時」イベント |
フィールドに文字入力 | ・コントロールの「テキストを変更した時」イベント
※1文字入力毎に発生する |
フィールド変更後、
他のフィールドをクリック | ・コントロールの「更新する前」イベント
・コントロールの「更新した後」イベント
※なぜかフォーカスを失った時イベントが発生しない |
なお、"フォーカスを得た時"とかのマクロでMsgboxを動かすのは危険です。
マクロが無限ループになり、止められなくなります(笑)。
値に応じて、フォームに入力制限をかけたりする場合、フォームの「レコード置換後」イベントと、コン
トロールの「更新した後」イベントにマクロをしかけるのがよさそうです。