Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

suppression ligne "vide"

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

ufernet

XLDnaute Junior
Bonjour;

Avec un tableau obtenu par coller en valeur d'une sélection contenant des cellules obtenues par une fonction si du type : si(A2=1; A2;""); les lignes de cellules "" ne sont pas vides! Dans l'exemple joint le tableau A1:U22 a été obtenu par la formule décrite avant. Je voudrai pouvoir selectionner les lignes 12.14.16 et 19 20 21 22 puis les supprimer en integrant cela dans la macro qui a permi d'obtenir ce tableau. Ces lignes sont vides mais pas tout à fait puisque elles sont selectionnées par crtl *, participent au tri et arrivent en tête en cas de tri de AZ sur A1. Le tableau réel fait 1000 lignes environ.
Merci de m'aider car ces cellules vides pleines me perturbent...
 

Pièces jointes

Re : suppression ligne "vide"

Bonjour à tous

Un exemple avec un filtre élaboré (ici on masque seulement les vides)
Code:
Sub Macro1()
' Macro2 Macro
' Macro enregistrée le 11/11/2012
[V2].FormulaR1C1 = "=COUNTBLANK(RC[-21]:RC[-1])<21"
Range("A1:U18").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("V1:V2"), Unique:=False
End Sub
 
Re : suppression ligne "vide"

Re

Et ici, on les supprime
Code:
Sub Macro2()
' Macro2 Macro
' Macro enregistrée le 11/11/2012
Dim pf As Range
[V2].FormulaR1C1 = "=COUNTBLANK(RC[-21]:RC[-1])=21"
Range("A1:U18").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("V1:V2"), Unique:=False
Set pf = [_FilterDataBase]
pf.Offset(1, 0).Resize(pf.Rows.Count - 1).SpecialCells(12).Delete Shift:=xlUp
[V2] = Empty
ActiveSheet.ShowAllData
End Sub

NB: Pour conserver les macros, enregistrer le classeur en *.xls ou *.xlsm
 
Re : suppression ligne "vide"

Merci,
La macro fonctionne super bien. Merci

Mais j'ai un autre problème car la macro que phlaurent55 m'avait donner pour supprimer les cellules vides à l'intérieur du tableau fonctionne très très lentement (+de 15 mn pour 500 lignes 21 colonnes).

Dim cellule As Range
For i = 5 To 21
For Each cellule In Range("F2:U" & Range("A65535").End(xlUp).Row)
If cellule = "" Then
cellule = Cells(cellule.Row, cellule.Column + 1)
Cells(cellule.Row, cellule.Column + 1) = ""
End If
Next cellule
Next i
Application.ScreenUpdating = True
[A1].Select
MsgBox ("Opération terminée")
End Sub
 
Re : suppression ligne "vide"

Macro 2 marche très bien et elle a supprimé toutes les lignes vides du tableau. Je pensais que de supprimer les lignes vides permettrait d'accélerer la suppression des cellules vides à l'interieur du tableau. Mais cela n'a pas accélerer la macro dont j'ai mis le code dans le message précédent. Je mets le fichier en pièce jointe. Il y a trois macro: CopierTableau qui copie les données dans la feuille Tableau Aprés. La macro Supprimer Ligne que tu as faite et la macro ElimineCelluleVide qui marche male ou pas du tout. Le résultat souhaité étant un tableau ou les données sont sur 11 colonnes donc sans "trou" car cela va servir à un publipostage.

Je suis un peu perdu car je ne comprends pas pourquoi c'est si long car en pas à pas cela semble fonctionner.

Merci
 

Pièces jointes

Re : suppression ligne "vide"

Re


Si j'ai bien compris
Code:
Sub ElimineCelluleVideBIS()
Dim i&
Application.ScreenUpdating = False
For i = 2 To Range("A65535").End(xlUp).Row
Cells(i, "F").Resize(, 16).Sort Key1:=Cells(i, "F"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next i
End Sub

PS: Code testé avec un PC sous XL2003, si version supérieure adapter le code avec l'enregistreur de macros
(en faisant un tri par ligne : Option de tri: De gauche vers la droite)

EDITION: Salut leti 😉
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

A
Réponses
11
Affichages
1 K
O
Réponses
4
Affichages
1 K
Olocsob
O
S
  • Question Question
Réponses
14
Affichages
2 K
E
  • Question Question
Réponses
6
Affichages
1 K
elmilo13
E
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…