Form.Current イベント (アクセス)

フォーカスがレコードに移動し、そのレコードがカレント レコードになったとき、またはフォームの再表示か再クエリが実行されたときに発生します。

構文

現在

expressionForm オブジェクトを表す変数です。

注釈

Current イベントが発生したときに、マクロまたはイベント プロシージャを実行するには、"OnCurrent/レコード移動時" プロパティをマクロ名または "[Event Procedure]"/"[イベント プロシージャ]" に設定します。

このイベントは、フォームが開いたときと、フォーカスがレコード間を移動したときのいずれの場合にも発生します。 Current イベント マクロまたはイベント プロシージャは、最初のレコードまたは移動先のレコードが表示される前に実行されます。

フォームの 現在の イベントが発生したときにマクロまたはイベント プロシージャを実行することで、現在のレコードに関連する別のフォームでメッセージを表示したり、レコードを同期したりできます。 たとえば、顧客レコードが最新になると、顧客の以前の注文を表示できます。 仕入先レコードが最新になると、仕入先によって製造された製品を "仕入先" フォームに表示できます。 また、現在のレコードに基づいて計算を実行したり、現在のレコードのデータに応じてフォームを変更したりすることもできます。

マクロまたはイベント プロシージャが Open イベントに応答して GoToControl アクションや GoToRecord アクション、または DoCmd オブジェクトの対応するメソッドを実行すると、Current イベントが発生します。

Current イベントは、フォームを更新するときや、フォームの基になるテーブルやクエリを再クエリするときも発生します。たとえば、[レコード] メニューの [フィルターの削除/並べ替え] を選択したり、マクロや Visual Basic コードで [再クエリ] アクションを使用したりした場合などです。

最初にフォームを開くと、次の順序でイベントが発生します。

OpenLoadResizeActivateCurrent

次の例では、[ 現在のイベント] プロシージャで [ Discontinued] というオプション ボタンの状態をチェックしています。 ボタンが選択されている場合、この例では [ 製品名 ] フィールドの背景色が赤に設定され、製品が製造中止になったことを示します。

この例を試す場合は、[ Discontinue ] というオプションと [製品名] というテキスト ボックスを含むフォームに、次のイベント プロシージャを追加します。

Private Sub Form_Current() 
 If Me!Discontinued Then 
 Me!ProductName.BackColor = 255 
 EndIf 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。