Recordset オブジェクト内の現在のレコードの位置を移動します。
構文
recordset.Move NumRecords, Start
パラメーター
NumRecords
現在のレコード位置が移動するレコードの数を指定する、符号付き 長 式。
start
随意。
文字列 値、またはブックマークに評価されるバリアント型 (Variant) 。
BookmarkEnum 値を使用することもできます。
備考
Move メソッドは、すべての Recordset オブジェクトでサポートされています。
引数 numRecords が 0 より大きい場合、現在のレコード位置は (Recordsetの末尾に向かって) 前方に移動します。 NumRecords が 0 未満の場合、現在のレコード位置は (Recordsetの先頭に向かって) 後方に移動します。
Move 呼び出しが現在のレコード位置を最初のレコードの前のポイントに移動する場合、ADO は現在のレコードをレコードセットの最初のレコードの前の位置に設定します (BOF は True )。 BOF プロパティが既に されている場合に戻ろうとすると、True はエラーを生成します。
Move 呼び出しが現在のレコード位置を最後のレコードの後のポイントに移動する場合、ADO はカレント レコードをレコードセット内の最後のレコードの後の位置に設定します (EOF は true )。 EOF プロパティが既に true されている場合に進もうとすると、エラーが発生。
空の Recordset オブジェクトから Move メソッドを呼び出すと、エラーが発生します。
引数 start を渡した場合、このブックマークを持つレコードに対する相対移動は、Recordset オブジェクトがブックマークをサポートしていると仮定します。 指定しない場合、移動は現在のレコードを基準とします。
CacheSize プロパティを使用してプロバイダーからレコードをローカルにキャッシュする場合は、キャッシュされたレコードの現在のグループの外部に現在のレコード位置を移動する NumRecords 引数を渡すと、ADO はコピー先レコードから新しいレコード グループを取得する必要があります。 CacheSize プロパティは、新しく取得したグループのサイズを決定し、宛先レコードは最初に取得したレコードです。
Recordset オブジェクトが転送のみである場合でも、NumRecords 引数を 0 未満で渡すことができます。ただし、コピー先が現在のキャッシュされたレコードのセット内にある場合です。 Move 呼び出しによって、最初にキャッシュされたレコードの前のレコードに現在のレコード位置が移動される場合は、エラーが発生します。 したがって、前方スクロールのみをサポートするプロバイダーの完全スクロールをサポートするレコード キャッシュを使用できます。 キャッシュされたレコードはメモリに読み込まれるため、必要以上に多くのレコードをキャッシュしないようにする必要があります。 前方専用 Recordset オブジェクトがこの方法で後方移動をサポートしている場合でも、前方専用 Recordset オブジェクトで MovePrevious メソッドを呼び出しても、エラーが発生します。
手記
前方専用 Recordset での後方移動のサポートは、プロバイダーによっては予測できません。 Recordsetの最後のレコードの後に現在のレコードが配置されている場合、 を後方に移動しても、正しい現在位置にならない可能性があります。
適用対象
関連項目
Move メソッドの使用例 (VB)
Move メソッドの使用例 (VBScript)
Move メソッドの使用例 (VC++)
MoveFirst、MoveLast、MoveNext、および MovePrevious メソッド (ADO)
MoveFirst、MoveLast、MoveNext、および MovePrevious メソッド (RDS)
MoveRecord メソッド (ADO)