Vba Suppression de lignes si valeur existe
mais_comment_donc?
-
ratapoilu -
ratapoilu -
Bonjour,
Sous Xcel, pour une feuille d'une trentaine de colonnes maxi, et de 65000 lignes maxi.
Je cherche à créer :
-- Variante A --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne C respectives seraient vides. (colonne c numérique)
-- Variante B --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne D respectives ="yza". (colonne D textuelle)
-- Variante Bonus --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne C respectives seraient vides OU dont la valeur de leur colonne D respectives ="yza".
ex: ci-dessous
A B C D E F
----------------------------------------
1 | AAA | BBB | CCC | DDD | EEE | FFF |
2 | abc | def | 123 | jkl | mno | pqr |
3 | stu | vwx | | yza | bcd | efg |
4 | hij | | 456 | nop | qrs | tuv |
5 | wxy | zab | 789 | yza | | ijk |
6 | lmn | opq | | rst | uvw | xyz |
-> variante A => Suppression automatique des lignes 3 et 6
-> Variante B => suppression automatique des lignes 3 et 5
-> Variante Bonus => suppression automatique des lignes 3,5, et 6
Et oui, ça à l'air couillon mais je n'apprends pas aussi vite que je le voudrais (semble t'il).
Je cherche donc ce super code et comment le modifier si j'ai besoin de cette manip sur d'autres colonnes ou sur d'autres valeurs.
Merci par avance pour votre aide
Sous Xcel, pour une feuille d'une trentaine de colonnes maxi, et de 65000 lignes maxi.
Je cherche à créer :
-- Variante A --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne C respectives seraient vides. (colonne c numérique)
-- Variante B --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne D respectives ="yza". (colonne D textuelle)
-- Variante Bonus --
une macro qui supprimerait toutes les lignes dont la valeur de leur colonne C respectives seraient vides OU dont la valeur de leur colonne D respectives ="yza".
ex: ci-dessous
A B C D E F
----------------------------------------
1 | AAA | BBB | CCC | DDD | EEE | FFF |
2 | abc | def | 123 | jkl | mno | pqr |
3 | stu | vwx | | yza | bcd | efg |
4 | hij | | 456 | nop | qrs | tuv |
5 | wxy | zab | 789 | yza | | ijk |
6 | lmn | opq | | rst | uvw | xyz |
-> variante A => Suppression automatique des lignes 3 et 6
-> Variante B => suppression automatique des lignes 3 et 5
-> Variante Bonus => suppression automatique des lignes 3,5, et 6
Et oui, ça à l'air couillon mais je n'apprends pas aussi vite que je le voudrais (semble t'il).
Je cherche donc ce super code et comment le modifier si j'ai besoin de cette manip sur d'autres colonnes ou sur d'autres valeurs.
Merci par avance pour votre aide
A voir également:
- Vba Suppression de lignes si valeur existe
- Forcer suppression fichier - Guide
- Partage de photos en ligne - Guide
- Suppression compte gmail - Guide
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Suppression page word - Guide
2 réponses
salut, une méthodes assez simple :
c'est la variante 3.
Si tu veux la premiere version, tu supprime ( or cells(i,4)="yza" ) si tu veux la variante deux, tu supprimes (cells(i,3)="" or).
Voila :
sub supp_ligne()
for i=1 to 65536
if cells(i,1)="" then exit for
if cells(i,3)="" or cells(i,4)="yza"then
rows(i).delete
i=i-1
end if
next i
end sub
c'est la variante 3.
Si tu veux la premiere version, tu supprime ( or cells(i,4)="yza" ) si tu veux la variante deux, tu supprimes (cells(i,3)="" or).
Voila :
sub supp_ligne()
for i=1 to 65536
if cells(i,1)="" then exit for
if cells(i,3)="" or cells(i,4)="yza"then
rows(i).delete
i=i-1
end if
next i
end sub