For i=1
Résolu/Fermé
Gawenronne
Messages postés
248
Date d'inscription
vendredi 4 mars 2011
Statut
Membre
Dernière intervention
1 février 2016
-
16 nov. 2011 à 12:22
Gawenronne Messages postés 248 Date d'inscription vendredi 4 mars 2011 Statut Membre Dernière intervention 1 février 2016 - 16 nov. 2011 à 14:13
Gawenronne Messages postés 248 Date d'inscription vendredi 4 mars 2011 Statut Membre Dernière intervention 1 février 2016 - 16 nov. 2011 à 14:13
A voir également:
- For i=1
- I showkeyplus - Télécharger - Utilitaires
- Downloader for pc - Télécharger - Téléchargement & Transfert
- I trema - Forum Windows
- And i miss you ✓ - Forum Musique / Radio / Clip
- Bouton marche arret i o - Forum Word
2 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
16 nov. 2011 à 12:34
16 nov. 2011 à 12:34
Salut,
C'est presque ça...
Seulement, ce code ne fonctionnera pas de manière optimale...
Supposons, pour l'exemple que tes lignes 5 et 6 correspondent au test (E5 = E6 = "XXX")
Quand i = 5, la ligne 5 est supprimée. La ligne 6 devient donc la ligne 5. Next i attribue la valeur 6 à i, donc l'ancienne ligne 6, qui réponds oui au test, ne sera pas traitée car elle porte maintenant le n° 5.
Ok?
Pour remédier à cela, il te faut inverser ta boucle en commençant par la fin. Comme ceci :
C'est presque ça...
Dim i As Long For i = 1 To 10 If Sheets("Feuil1").Range("E" & i).Value = "XXX" Then Rows(i).Delete Next
Seulement, ce code ne fonctionnera pas de manière optimale...
Supposons, pour l'exemple que tes lignes 5 et 6 correspondent au test (E5 = E6 = "XXX")
Quand i = 5, la ligne 5 est supprimée. La ligne 6 devient donc la ligne 5. Next i attribue la valeur 6 à i, donc l'ancienne ligne 6, qui réponds oui au test, ne sera pas traitée car elle porte maintenant le n° 5.
Ok?
Pour remédier à cela, il te faut inverser ta boucle en commençant par la fin. Comme ceci :
Dim i As Long For i = 10 To 1 Step - 1 If Sheets("Feuil1").Range("E" & i).Value = "XXX" Then Rows(i).Delete Next
Gawenronne
Messages postés
248
Date d'inscription
vendredi 4 mars 2011
Statut
Membre
Dernière intervention
1 février 2016
34
16 nov. 2011 à 14:13
16 nov. 2011 à 14:13
Merci beaucoup!
Ca fait depuis 2 ans que j'ai pu touché à la VBA alors je commence à être rouillé.
Je test la dernière solution.
Encore merci
Ca fait depuis 2 ans que j'ai pu touché à la VBA alors je commence à être rouillé.
Je test la dernière solution.
Encore merci