"SearchForRecord/オブジェクトからレコードの検索" マクロ アクション

Access デスクトップ データベースの"SearchForRecord/オブジェクトからレコードの検索" マクロ アクションを使うと、テーブル、クエリ、フォーム、またはレポートの特定のレコードを検索できます。

設定

"SearchForRecord/オブジェクトからレコードの検索" マクロ アクションには次の引数があります。

アクションの引数

説明

オブジェクトの種類

レコードを検索するデータベース オブジェクトの種類を入力または選択します。[テーブル]、[クエリ]、[フォーム]、または [レポート] を選択できます。

オブジェクト名

検索対象のレコードが含まれている特定のオブジェクトを入力または選択します。ドロップダウン リストに、"Object Type/オブジェクトの種類" 引数で選択した種類のすべてのデータベース オブジェクトが表示されます。

レコード

検索の開始位置と方向を指定します。

設定

説明

前へ

現在のレコードから後ろ向きに検索します。

次へ

現在のレコードから前向きに検索します。

先頭

先頭のレコードから前向きに検索します。これがこの引数の既定値です。

最後

最後のレコードから後ろ向きに検索します。

Where 条件式

SQL WHERE 句と同じ構文を使って、検索の抽出条件を入力します。ただし、"WHERE" は除きます。次に例を示します。

Description = "Beverages"

フォーム上のテキスト ボックスからの値を含む条件を作成するには、条件の最初の部分と、検索対象の値を含むテキスト ボックスの名前を連結する式を作成する必要があります。たとえば、次の条件は、Description フィールドで、frmCategories という名前のフォームの txtDescription という名前のテキスト ボックスの値を検索します。式の先頭にある等号 (=) と、テキスト ボックス参照の両側に使われている単一引用符 (') にご注意ください。

="Description = '" & Forms![frmCategories]![txtDescription] & "'"

解説

  • "Where Condition/Where 条件式" 引数の抽出条件と複数のレコードが一致する場合、検索されるレコードは次の要因によって決まります。

    • レコード引数の設定    "Record/レコード" 引数に関する詳細については、「設定」セクションの表を参照してください。

    • レコードの並べ替え順序    たとえば、"Record/レコード" 引数を [先頭] に設定した場合、レコードの並べ替え順序を変更すると、見つかるレコードが変わることがあります。

  • このアクションを実行する前に、"Object Name/オブジェクト名" 引数で指定したオブジェクトを開いておく必要があります。そうしないと、エラーが発生します。

  • "Where Condition/Where 条件式" 引数の抽出条件が満たされない場合、エラーは発生せず、フォーカスは現在のレコードのままになります。

  • 前または次のレコードを検索する場合、データの終端になっても検索は "折り返されません"。抽出条件に一致するレコードがそれ以上ない場合、エラーは発生せず、フォーカスは現在のレコードのままになります。一致が見つかったことを確認するには、次のアクションの条件を入力し、条件を "Where Condition/Where 条件式" 引数の抽出条件と同じにします。

  • VBA モジュールで "SearchForRecord/オブジェクトからレコードの検索" アクションを実行するには、DoCmd オブジェクトの "SearchForRecord/オブジェクトからレコードの検索" メソッドを使います。

  • "SearchForRecord/オブジェクトからレコードの検索" マクロ アクションは "FindRecord/レコードの検索" マクロ アクションと似ていますが、"SearchForRecord/オブジェクトからレコードの検索" はさらに強力な検索機能を備えています。"FindRecord/レコードの検索" マクロ アクションは、主に文字列の検索に使用され、[検索] ダイアログ ボックスの機能と同じです。"SearchForRecord/オブジェクトからレコードの検索" マクロ アクションは、それよりもフィルターまたは SQL クエリに似た抽出条件を使います。次の一覧では、"SearchForRecord/オブジェクトからレコードの検索" マクロ アクションで実行できることを示します。

    • "Where Condition/Where 条件式" 引数では、次のような複雑な抽出条件を使用できます。

Description = "Beverages" and CategoryID = 11

  • フォームまたはレポートのレコード ソース内にはあってもフォームまたはレポートに表示されないフィールドを参照できます。前の例では、抽出条件が動作するために、Description および CategoryID のどちらもフォームまたはレポートに表示される必要はありません。

  • <>ANDORBETWEEN などの論理演算子を使用できます。"FindRecord/レコードの検索" アクションは、検索対象の文字列と等しい文字列、その文字列で始まっている文字列、またはその文字列を含む文字列だけと一致します。

次のマクロは、最初に "OpenTable/テーブルを開く" アクションを使って、Categories テーブルを開きます。次に、"SearchForRecord/オブジェクトからレコードの検索" マクロ アクションを使って、Description フィールドが "Beverages" と等しい最初のレコードをテーブル内で検索します。

アクション

引数

OpenTable/テーブルを開く

テーブル名:Categories

表示:データシート

データ モード:Edit

SearchForRecord/オブジェクトからレコードの検索

オブジェクトの種類:Table

オブジェクト名:Categories

レコード:First

Where 条件式:Description = "Beverages"

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×