Access デスクトップ データベースの FindNextRecord/次のレコードを検索マクロ アクションを使用すると、先行する FindRecord/レコードの検索アクションまたは [検索と置換] ダイアログ ボックス ([ホーム] タブで [検索] をクリック) の値で指定された抽出条件を満たす次のレコードを検索できます。 FindNextRecord/次のレコードを検索アクションを使って、レコードを繰り返し検索できます。 たとえば、特定の顧客のすべてのレコードを連続して移動できます。
注: Access 2010 から、"FindNextRecord/次のレコードを検索" マクロ アクションは、"FindNext/次を検索" から "FindNextRecord/次のレコードを検索" に名称変更されました。
注: "FindNextRecord/次のレコードを検索" マクロ アクションは、Access Web アプリケーションでは利用できません。
設定
FindNextRecord/次のレコードを検索アクションには、引数はありません。 FindNextRecord/次のレコードを検索アクションでは、FindRecord/レコードの検索アクションまたは [検索と置換] ダイアログ ボックスで設定された条件を満たす次のレコードを検索します。 FindRecord/レコードの検索アクションの引数は、[検索と置換] ダイアログ ボックスのオプションと共有されます。
検索条件を設定するには、FindRecord/レコードの検索アクションを使用します。 通常、FindRecord/レコードの検索アクションをマクロに入力してから、FindNextRecord/次のレコードを検索アクションを使用して同じ検索条件を満たす連続するレコードを検索します。
解説
このアクションは、[検索と置換] ダイアログ ボックスで [次を検索] ボタンを使用するのと同じ効果があります。
注: FindRecord/レコードの検索アクションは、テーブル、クエリ、フォームでは [ホーム] タブの [検索] コマンドに対応していますが、コード ウィンドウでは [編集] メニューの [検索] コマンドに対応していません。 FindRecord/レコードの検索アクションまたはFindNextRecord/次のレコードを検索アクションを使ってモジュール内のテキストを検索することはできません。
ヒント: FindRecord/レコードの検索アクションの [Only Current Field/カレント フィールドのみ] 引数を [はい] に設定している場合、FindNextRecord/次のレコードを検索 アクションを使用する前に、GoToControl/コントロールの移動アクションを使用して、フォーカス を検索するデータを含む コントロール に移動する必要がある場合があります。
現在選択されているテキストが、FindNextRecord/次のレコードを検索マクロ アクション実行時の検索テキストと同じである場合は、同じレコードの同じフィールドの、選択されているテキストの直後から検索が開始されます。 選択されているテキストと検索テキストが異なる場合は、カレント レコードの先頭から検索が開始されます。 このため、1 つのレコードに同じ検索条件を満たすテキストが複数存在する場合の検索ができます。
ただし、 コマンド ボタン を使用して FindNextRecord アクションを含むマクロを実行すると、検索条件の最初のインスタンスが繰り返し検出されることに注意してください。 この動作は、コマンド ボタンをクリックすると、一致する値を含むフィールドから フォーカス が削除されるために発生します。 FindNextRecord アクションは、レコードの先頭から検索を開始します。 この問題を回避するには、カスタム ツール バー ボタンや AutoKeys マクロで定義されているキーの組み合わせなど、フォーカスを変更しない手法を使用してマクロを実行します。 または、 FindNextRecord アクションを実行する前に、マクロのフォーカスを検索条件を含むフィールドに設定します。
コマンド ボタンを使用してFindRecord/レコードの検索アクションを含むマクロを実行すると、[先頭から検索] 引数を [いいえ] に設定して実行する場合と同じ動作になります。
Visual Basic for Applications (VBA) モジュールでFindNextRecord/次のレコードを検索アクションを実行するには、DoCmd オブジェクトの FindNext メソッドを使用します。