Partager via


Méthodes MoveFirst, MoveLast, MoveNext et MovePrevious (ADO)

S’applique à : Access 2013, Office 2013

Accède au premier, au dernier ou à l’enregistrement suivant d’un objet Recordset spécifié et fait de celui-ci l’enregistrement actif.

Syntaxe

recordset. { MoveFirst | MoveLast | MoveNext | MovePrevious}

Remarques

Utilisez la méthode MoveFirst pour accéder au premier enregistrement de l'objet Recordset et faire de celui-ci l'enregistrement actif.

Utilisez la méthode MoveLast pour accéder au dernier enregistrement de l'objet Recordset et faire de celui-ci l'enregistrement actif. Cet objet Recordset doit prendre en charge les signets ou un déplacement du curseur arrière ; sinon, l'appel de la méthode génère une erreur.

Un appel à MoveFirst ou MoveLast lorsque l'objet Recordset est vide (les propriétés BOF et EOF ont toutes deux la valeur True) génère une erreur.

Utilisez la méthode MoveNext pour faire avancer la position de l’enregistrement actif d’un enregistrement (vers la fin de l’objet Recordset). Si l’enregistrement actif est le dernier enregistrement et que vous appelez la méthode MoveNext, ADO définit l’enregistrement actif à la position qui suit le dernier enregistrement de l’objet Recordset (la propriété EOF a la valeur True). Une tentative de déplacement avant lorsque la propriété EOF a déjà la valeur True génère une erreur.

Dans les cas où l’objet Recordset a été filtré ou trié et que les données de l’enregistrement actif sont modifiées, la position peut également changer. Dans ce cas, la méthode MoveNext fonctionne normalement, mais vous devez savoir que la position est déplacée d’un enregistrement à partir de la nouvelle position, et non de l’ancienne position. Par exemple, la modification des données de l’enregistrement actif, de sorte que l’enregistrement soit déplacé à la fin de l’objet Recordset trié, signifierait que l’appel de MoveNext entraîne la définition de l’enregistrement actif par ADO à la position après le dernier enregistrement dans l’objet Recordset (EOF = True).

Utilisez la méthode MovePrevious pour faire reculer la position de l’enregistrement actif d’un enregistrement (vers le début de l’objet Recordset). L’objet Recordset doit prendre en charge les signets ou le déplacement du curseur arrière ; sinon, la méthod génère une erreur. Si le premier enregistrement est l’enregistrement actif et que vous appelez la méthode MovePrevious, ADO définit l’enregistrement actif à la position précédant le premier enregistrement de l’objet Recordset (la propriété BOF a la valeur True). Une tentative de déplacement arrière lorsque la propriété BOF a déjà la valeur True génère une erreur. Si l'objet Recordset ne prend pas en charge les signets ou le déplacement du curseur arrière, la méthode MovePrevious génère une erreur.

S'il s'agit d'un objet Recordset avant uniquement et que vous souhaitez prendre en charge le défilement arrière et avant, vous pouvez utiliser la propriété CacheSize pour créer un cache d'enregistrements qui prend en charge le déplacement du curseur arrière via la méthode Move. Dans la mesure où les enregistrements mis en cache sont chargés en mémoire, évitez de mettre en cache plus d'enregistrements qu'il n'est nécessaire. Vous pouvez appeler la méthode MoveFirst dans un objet Recordset avant uniquement ; dans un tel cas, il se peut que le fournisseur réexécute la commande qui a généré l'objet Recordset.