Move

(PWS4 IIS4 IIS5)
Move — Recordset オブジェクトでカレント レコードの位置を移動します。

構文

recordset.Move NumRecords, Start

パラメータ

recordset
Recordset オブジェクを指定します。
NumRecords
カレント レコードの位置を移動するレコード数を指定する、符号付きの長整数型 (Long) の式を指定します。
Start
省略可能です。ブックマークとして評価される文字列型 (String) またはバリアント型 (Variant) の値を指定します。BookmarkEnum 値を使用することもできます。

説明

Move メソッドは、すべての Recordset オブジェクトでサポートされています。

NumRecords 引数が 0 よりも大きい場合、カレント レコードの位置は前方、つまり、Recordset の終端方向に移動します。NumRecords 引数が 0 よりも小さい場合、カレント レコードの位置は後方、つまり、Recordset の始端方向に移動します。

Move メソッドを呼び出してカレント レコードの位置を先頭レコードの前に移動しようとした場合、カレントレコードがレコードセットの先頭レコードの前の位置に設定され、BOF が True になります。BOF プロパティが既に True の場合、後方へ移動しようとすると、エラーが発生します。

Move メソッドを呼び出してカレントレコードの位置を最後のレコードの後に移動しようとした場合、カレント レコードがレコードセットの最後のレコードの後ろに設定され、EOF が True になります。EOF プロパティが既に True の場合、前方へ移動しようとすると、エラーが発生します。

空の Recordset オブジェクトから Move メソッドを呼び出すと、エラーが発生します。

Start 引数を指定した場合、Recordset オブジェクトではブックマークがサポートされていると見なされ、このブックマークを持つレコードが移動の基準となります。Start 引数を指定しない場合は、カレント レコードが移動の基準となります。

CacheSize プロパティを使用してプロバイダからのレコードをローカルにキャッシュしている場合、NumRecords 引数を渡したことによってカレントレコードの位置が現在キャッシュされているレコード グループの範囲外に移動されると、移動先のレコードから始まる新しいレコードグループが強制的に取り込まれます。新しく取り込まれるグループのサイズは CacheSize プロパティによって決まり、移動先のレコードが最初に取得されるレコードになります。

Recordset オブジェクトが前方スクロールのみ可能な場合でも、移動先が、現在キャッシュされているレコード セットの範囲内であれば、0 より小さい値を NumRecords 引数に指定することができます。Move メソッドを呼び出して、カレントレコードの位置を、キャッシュされている最初のレコードより前のレコードに移動しようとした場合は、エラーが発生します。このように、前方スクロールのみをサポートするプロバイダで、完全スクロールをサポートするレコードキャッシュを使用することができます。キャッシュされたレコードはメモリに読み込まれるため、必要以上のレコードのキャッシュは避けてください。前方スクロールのみ可能な Recordset オブジェクトでも、この方法で後方への移動を実行できますが、前方スクロールのみ可能な Recordset オブジェクトで MovePrevious メソッドを呼び出すと、エラーが発生します。

注意 前方スクロールのみ可能な Recordset で後方への移動がサポートされているかどうかは、プロバイダによります。カレント レコードが Recordset の最後のレコードの後ろにある場合、後方への Move を実行しても現在の位置が正しく示されないことがあります。

関連ページ