Find メソッド (ADO)
Recordset で、指定した条件を満たす行を検索します。 必要に応じて、検索の方向、開始行、および開始行からのオフセットを指定できます。 条件が満たされている場合、現在の行位置は見つかったレコードに設定されます。それ以外の場合、位置は Recordsetの終了 (または開始) に設定されます。
構文
Find (Criteria, SkipRows, SearchDirection, Start)
パラメーター
抽出条件
検索で使用する列名、比較演算子、および値を指定するステートメントを含む 文字列 値です。
SkipRows
随意。
長い 値。既定値は 0 で、現在の行からの行オフセットを指定するか、検索を開始するブックマーク 開始 指定します。 既定では、現在の行で検索が開始されます。
SearchDirection
随意。
SearchDirectionEnum、現在の行で検索を開始するか、検索の方向で次に使用可能な行で検索を開始するかを指定する値です。 値が adSearchForward の場合、Recordset の末尾で検索が失敗します。 値が adSearchBackward の場合、Recordset の開始時に検索が失敗します。
start
随意。
バリアント 検索の開始位置として機能するブックマークです。
備考
条件 では、単一列名指定できます。 このメソッドは、複数列の検索をサポートしていません。
抽出条件 の比較演算子は、">" (より大きい)、"<" (より小さい)、"=" (等しい)、">=" (以上)、"<=" (以下)、"<>" (等しくない)、または "like" (パターン マッチング) にすることができます。
抽出条件 の値には、文字列、浮動小数点数、または日付を指定できます。 文字列値は、単一引用符または "#" (数値記号) 記号 ("state = 'WA'" や "state = #WA#" など) で区切られます。 日付の値は、"#" (数値記号) 記号 ("start_date > #7/22/97#" など) で区切られます。 これらの値には、タイム スタンプを示す時間、分、秒を含めることができますが、ミリ秒を含めてはなりません。エラーが発生します。
比較演算子が "like" の場合、文字列値にアスタリスク (*) を含め、任意の文字または部分文字列の 1 つ以上の出現箇所を見つけることができます。 たとえば、"state like 'M*'" は Maine と Massachusetts に一致します。 先頭と末尾のアスタリスクを使用して、値に含まれる部分文字列を検索することもできます。 たとえば、"state like '*as*'" は、アラスカ、アーカンソー、およびマサチューセッツ州と一致します。
アスタリスクは、上に示すように、抽出条件文字列の末尾、または抽出条件文字列の先頭と末尾の両方でのみ使用できます。 アスタリスクを先頭のワイルドカード ('*str')、または埋め込みワイルドカード ('s*r') として使用することはできません。 これによりエラーが発生します。
手記
Find を呼び出す前に現在の行位置が設定されていない場合エラーが発生します。 MoveFirstなど、行の位置を設定するメソッドは、Findを呼び出す前に呼び出す必要があります。
手記
レコードセットで Find メソッドを呼び出し、レコードセット内の現在の位置がファイルの最後または末尾 (EOF) にある場合、何も見つかりません。 現在の位置/カーソルをレコードセットの先頭に設定するには、MoveFirst メソッドを呼び出す必要があります。
適用対象
関連項目
Find メソッドの使用例 (VB)
Index プロパティの
Optimize Property-Dynamic (ADO)
Seek メソッドの