Bonjour,
Je souhaite créer une macro qui, à partir d'un tableau, fait un test sur une colonne pour identifier la première cellule "Non" en partant d'en bas de la colonne et applique une modification du texte sur une autre cellule se trouvant sur la même ligne.
exemple : voir tableau joint--> Feuil1 les données/ feuil2 le résultat surligné en vert
en fait, j'ai commencé un bout de code mais je n'arrive pas à arrêter la boucle au premier test:
sur la colonne ciblé, j'applique :
For n = 10000 To 3 Step -1
If Cells(n, 1) = "Non" Then Cells(n, 1).Value = Split(Cells(n, 1).Value, "B") Next n
ça marche mais sur toute la colonne alors que je souhaite que la modif s'applique une seule fois et s'arrête au premier Non.
Bonjour*pas sur d'avoir compris mais peut être une réponse
Tu mets un Exit for dèsque tu trouves !
VB:
For n = 10000 To 3 Step -1
If Cells(n, 1) = "Non" Then Cells(n, 1).Value = Split(Cells(n, 1).Value, "B"):Exit For
Next n
je ne comprends pas la Logique de :
Code:
Cells(n, 1) = "Non" Then Cells(n, 1).Value = Split(Cells(n, 1).Value, "B")
'ce que je comprends la cellule de la colonne 1 contient "Non" rien d'autre apparemment et tu Split(son contenu, sur un "B")??????
Peux-tu expliquer , mettre un exemple de ce que tu as et ce que tu veux ?
Jean marie
Bonjour Jean Marie,
Merci de ton retour.
C'est vrai, ce n'est pas clair.
Mais en gros, je cherche à identifier le premier "Non" en partant du bas sur la colonne D, une fois identifier, je modifie la cellule de colonne B se trouvant sur la même ligne en supprimant la dernière la lettre (A).
Exp dans le fichier Excel en PJ de mon premier msg.
Sinon, comment mettre en place un Exit for des qu'il trouve le premier "Non" en partant du bas ?
je ne connais pas ce code.
Re
Ok ensuite utiliser un Split pour enlever une lettre ! Mais je ne connais pas la finalité Lol
N'hésite pas si besoin !
Bonne continuation
Jean marie