Utilisation de la commande "movenext" dans un "do while rec.eof = false"

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 553 fois - Téléchargée 35 fois

Contenu du snippet

bonjour,

je souhaite faire une lecture de tous les enregistrements d'une de mes tables sous Access 2000 et modifier certains champs.

Pour cela j'utilise do while eof et un movenext.

Malheureusement, lorsque j'arrive à la fin de mon fichier, il me met un message d'erreur, hors il devrait simplement quitter ma boucle et passer à la suite.

La boucle fonctionne bien; c'est simplement en arrivant au dernier enregistrement de ma table que ça bug.

Qu'est ce qui va pas dans mon code ??

Merci.

Source / Exemple :


Dim db as database
Dim rec as recordset
Dim trouver1 as string
Dim Chercher1 as String

Set db = currentdb
set rec = db.openrecordset ("Table1")

Do While rec.EOF = False
 
    If Chercher1 = Trouver1 Then

        rec.Edit
        rec![NumAuto] = Me.C_Nom
        rec.Update

    End If
    
    Rec.MoveNext
    Trouver1 = Rec![NumFacture]
            
Loop

A voir également

Ajouter un commentaire

Commentaires

espsl25
Messages postés
3
Date d'inscription
mardi 1 avril 2003
Statut
Membre
Dernière intervention
10 mai 2011
-
le programme et de type débutant, et c pas la peine de trop critiquer, c tres mauvais
krissssss
Messages postés
88
Date d'inscription
jeudi 26 décembre 2002
Statut
Membre
Dernière intervention
2 janvier 2007
-
Il est assez facile de transformer cette question en source :-)
(source qui devient alors très interressante)

A ce momment, c'est vos 3 commentaires et le mien qui n'auront plus leur place ici ;-)

Psycadi02, transforme ta question maintenant que tu as ta réponse et le mal sera réparé :-)

Jujufouq, lis les comentaires de autres avant de mettre le tien, car c'est inutile de se répéter

olivier42, quelle clarté !!! :-)

Zoltan67, rien à redire...
cs_olivier42
Messages postés
22
Date d'inscription
jeudi 17 octobre 2002
Statut
Membre
Dernière intervention
3 juillet 2003
-
le plus simple c'est d'inverser tes lignes "rec.movenext" et "Trouver1 = Rec![NumFacture]"
Jujufouq
Messages postés
254
Date d'inscription
jeudi 27 décembre 2001
Statut
Membre
Dernière intervention
5 mars 2006
-
Euh...
If source question Then source pasSource : MsgBox "Faut virer ce message qui devrait être au forum!"

Merci de comprendre l'utilité du forum et de respecter cette place pour les SOURCES que nous offre le réseau CodeS-SourceS.
cs_Zoltan67
Messages postés
91
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
25 juin 2003
1 -
ici, c pour déposer des sources, pas pour poser des questions
les questions, c sur le forum que ça se pose !!!
mais je vais être gentil :
après ton movenext, tu fais un rec![numfacture].
donc c normal qu'il te mette un message d'erreur quand tu es au dernier enregistrement, car a ce moment tu as rec.eof=true, donc fais juste un test genre
if not rec.eof then Trouver1 = Rec![NumFacture]
la prochaine fois, met ta question dans le forum

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.