VBA- debut de boucle avec find

bonjour a tous

ce n'est pas tres simple de mettre un fichier exemple ( tres gros fichier et complexe ) donc je vais essaye de faire sans

j'ai une boucle vba qui commence lorsque elle trouve un "nom"

et qui se termine des qu'il a aune case vide

voici le code

....
db = Range("a:a").Find(Nom, LookAt:=xlWhole).Row
fin = Range("A" & 65536).End(xlUp).Row

    For k = db To fin
......

db pour debut , fin pour fin , et nom pour le nom a rechercher ( ca fonctionne très bien )

mais j'aimerai faire plus

je souhaite tjs chercher le" nom " mais je voudrais qu'une fois le nom ( a partir de la ligne ou se trouve le nom

on recherche le mot " note " et la ligne ou se trouve le mot "note" serais mon nouveau point de depart pour ma boucle

' db2 = " note" de l'eleve avec le nom " XXXX"

db = Range("a:a").Find(Nom, LookAt:=xlWhole).Row

db2 = a partir de la ligne db ???? : find ( "note" LookAt:=xlWhole).Row

for K t= db2 to fin

merci de votre aide

Bonjour,

db2 = range("A:A").Find("note", After:=Cells(db, 1), LookAt:=xlWhole).Row

bonjour

et merci pour la réponse je ne savais pas que l'on pouvais faire ainsi ( after ... )

nous sommes sur la bonne voie mais j'ia un souci

une erreur> Variable objet non définie (Erreur 91 )

viens me chercher des poux

https://support.microsoft.com/fr-fr/kb/462012

donc j'ai bricoler le code en conséquence pour résoudre l'erreur 91

db = Range("a:a").Find(Nom, LookAt:=xlWhole).Row

     Set db2 = Range("A:A").Find("Note", After:=Cells(db, 1), LookAt:=xlWhole)  ' row

     If db2 Is Nothing Then db2 = fin 
      Else
     db2 = Range("A:A").Find("Note", After:=Cells(db, 1), LookAt:=xlWhole).Row
     End If

 fin = Range("A" & 65536).End(xlUp).Row

    For k = db2 To fin

mais bon j'ai une nouvelle erreur

else sans if alors que ya bien un if

la j'avoue ne pas savoir ....

ou alors faire un traitement particulier de l"erreur 91 ?

Mets ton fichier si tu veux qu'on diagnostique !

db2 n'était pas censée être une variable objet, tu la traites alternativement comme variable objet et variable integer.

Si Variant ça peut éventuellement marcher. Mais tu lui affectes la valeur de fin avant définition de cette dernière...

Avec cet extrait on n'y voit pas vraiment clair !

Pour l'instant, je vais manger !

Bye !

merci de ton aide


foufie a écrit :

merci de ton aide

bien entendu je n'ai pas declarer mes varaibles ( ) juste fais un dim

de mauvaise habitude

je vais continuer a bricoler un peu et si je n y' arrive tjs pas je posterai le fichier

je vais peut etre pouvoir faire autrement >>

car db est bien le debut de ma recherche et "fin" la fin ce qui me donne une plage de donnee j'ai plus qu'a chercher

si le mot note est present dans cette plage et si il est present noter le numero de la ligne ou ce trouve le mot

Rechercher des sujets similaires à "vba debut boucle find"