VBA EXCEL : creer un boucle dont la valeur de fin evolue

Résolu/Fermé
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 - Modifié par Eaheru le 24/06/2014 à 11:17
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 - 17 juil. 2014 à 14:51
Bonjour,

J'essaie de coder proprement une boucle dont la fin évolue et j'aimerais votre point de vue afin d'avoir un code "propre".

le principe est :

lasti = Range("A" & Rows.Count).End(xlUp).Row

for i=3 to lasti
if toto > 1 then
Rows(i).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
lasti = Range("A" & Rows.Count).End(xlUp).Row
end if
next i

comme écrit ci dessus j'ai tenté le recalcul dans la boucle après l'insertion d'une ligne, mais ça ne fonctionne pas.
du coup le traitement s'arrête a la valeur de fin de boucle initiale alors que j'ai inséré X lignes ...
Voila, votre aide est la bienvenue ! :)
A voir également:

3 réponses

f894009 Messages postés 16748 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2022 1 659
24 juin 2014 à 11:27
Bonjour,

Ben oui, mais nous ne savons pas qui est toto ????
0
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 20
24 juin 2014 à 12:50
:) c'est important ?
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 195
24 juin 2014 à 13:01
Bonjour,

Il faut incrémenter
lasti = lasti + 1
à chaque ajout d'une ligne dans la boucle.
0
f894009 Messages postés 16748 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2022 1 659
24 juin 2014 à 13:31
Bonjour,

lasti = Range("A" & Rows.Count).End(xlUp).Row
est suppose faire le +1 a chaque ajout de ligne
0
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 20
24 juin 2014 à 17:29
Oui, c'est la fonction de cette ligne effectivement
0
f894009 Messages postés 16748 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2022 1 659
24 juin 2014 à 17:34
Re,

il faudrait mettre votre fichier a dispo sur https://www.cjoint.com/
0
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 20
17 juil. 2014 à 14:51
Je reviens sur ce sujet.
Au final j'ai inséré un texte en colonne A 2 lignes sous la dernière ligne initiale et je teste la cellule de la colonne A. Tant que je ne retrouve pas mon texte, c'est que je ne suis pas a la fin du traitement.
0