Form.Current イベント (Access)
フォーカスがレコードに移動し、そのレコードがカレント レコードになったとき、またはフォームの再表示か再クエリが実行されたときに発生します。
構文
式。現在の
expressionForm オブジェクトを表す変数です。
注釈
Current イベントが発生したときに、マクロまたはイベント プロシージャを実行するには、"OnCurrent/レコード移動時" プロパティをマクロ名または "[Event Procedure]"/"[イベント プロシージャ]" に設定します。
このイベントは、フォームが開いたときと、フォーカスがレコード間を移動したときのいずれの場合にも発生します。 Current イベント マクロまたはイベント プロシージャは、最初のレコードまたは移動先のレコードが表示される前に実行されます。
フォームの Current イベントが発生したときにマクロまたはイベント プロシージャを実行すると、メッセージを表示したり、現在のレコードに関連する別のフォームのレコードを同期したりできます。 たとえば、顧客レコードが最新になると、顧客の以前の注文を表示できます。 仕入先レコードが最新になると、仕入先によって製造された製品を 仕入先 フォームに表示できます。 また、現在のレコードに基づいて計算を実行したり、現在のレコード内のデータに応答してフォームを変更したりすることもできます。
マクロまたはイベント プロシージャが、Open イベントに応答して GoToControl または GoToRecord アクション、または DoCmd オブジェクトの対応するメソッドを実行すると、Current イベントが発生します。
Current イベントは、フォームを更新したり、フォームの基になるテーブルまたはクエリを再クエリしたりするときにも発生します。たとえば、[レコード] メニューで [フィルター/並べ替えの削除] を選択したり、Visual Basic コードのマクロで Requery アクションを使用したり、Requery メソッドを使用したりします。
最初にフォームを開くと、次の順序でイベントが発生します。
Open → Load → Resize → Activate → Current
例
次の例では、 Current イベント プロシージャによって 、Discontinued というオプション ボタンの状態がチェックされます。 ボタンが選択されている場合、この例では ProductName フィールドの背景色を赤に設定して、製品が廃止されたことを示します。
この例を試すには、次のイベント プロシージャを、 Discontinued というオプションと ProductName というテキスト ボックスを含むフォームに追加します。
Private Sub Form_Current()
If Me!Discontinued Then
Me!ProductName.BackColor = 255
EndIf
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。