Suppression des lignes où cellule vide dans une colonne x
Fermé
Brutalizer
-
22 sept. 2014 à 11:16
skk201 Messages postés 938 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 16 octobre 2016 - 23 sept. 2014 à 15:54
skk201 Messages postés 938 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 16 octobre 2016 - 23 sept. 2014 à 15:54
A voir également:
- Suppression des lignes où cellule vide dans une colonne x
- Aller à la ligne dans une cellule excel - Guide
- Déplacer une colonne excel - Guide
- Forcer suppression fichier - Guide
- Formate pour taxer client frigo vide - Forum Loisirs / Divertissements
- Si cellule contient x alors ✓ - Forum Excel
2 réponses
ccm81
Messages postés
10851
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
16 avril 2024
2 404
22 sept. 2014 à 21:41
22 sept. 2014 à 21:41
Bonjour
@skk201. Salut à toi, je pense qu'en partant de la fin le code est plus simple
Cdlmnt
Const lideb = 1
Const lifin = 50
Const coas = "F"
Public Sub SuppLignes()
Dim li As Long
With ActiveSheet
For li = lifin To lideb Step -1
If .Range(coas & li).Value = "" Then Rows(li).EntireRow.Delete
Next li
End With
End Sub
@skk201. Salut à toi, je pense qu'en partant de la fin le code est plus simple
Cdlmnt
skk201
Messages postés
938
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
16 octobre 2016
54
22 sept. 2014 à 13:40
22 sept. 2014 à 13:40
Bonjour Il y a le code si dessous qui fonctionne, il peut parfois être un peut gourmand. Et s'il y a 5 fois de suite la valleur de la colonne F est égale à ou "" Alors il arrête l'exécution pour ne pas faire de boucle infinie.
Après à vous de voir comment vous voulez l'executer.
Il est aussi possible de le rendre moins gourmand si on est sûr que la colonne "A" par exemple contienne toujours une valeur que F soit vide ou non.
Après à vous de voir comment vous voulez l'executer.
Il est aussi possible de le rendre moins gourmand si on est sûr que la colonne "A" par exemple contienne toujours une valeur que F soit vide ou non.
Sub effacer() Dim C As Byte 'Numéro de la colonne à controler C = 6 Dim Compteur As Byte 'Evite les boucle infinie Compteur = 0 For L = 1 To 100 'Controle les lignes 1 à 100 If Cells(L, C).Value = "" Or Cells(L, C).Value = 0 Then 'Controle si vide Rows(L & ":" & L).Delete Shift:=xlUp 'Efface la ligne complète Compteur = Compteur + 1 If Compteur = 5 Then Exit For 'Contrile si le compteur n'est pas égal à 5, s'il est = a 5 alors il ferme la boucle L = L - 1 'Recontrole la même ligne (Car la ligne vide prendra les valeur de la ligne en dessous Else Compteur = 0 End If Next End Sub
23 sept. 2014 à 15:54
Super malin pour éviter le saut de ligne lors de la suppression ;)
J'y penserai la prochaine fois !
Merci