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

Suppression de lignes vides

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 !

orphelion

XLDnaute Occasionnel
Bonjour,
ma question parait vraiment basique (elle l'est sans aucun doute) mais je n'arrive pas a supprimer deux lignes dans mon classeur et je ne comprends bien evidemment pas pourquoi.
supprimer duplicas ne fonctionne pas pour ces deux lignes...
j'ai essaye le code suivant mais il ne les supprime pas non plus..


Code:
Sub DeleteBlankRows1()

'Deletes the entire row within the selection if the ENTIRE row contains no data.



Dim i As Long
    
    With Application

        .Calculation = xlCalculationManual

        .ScreenUpdating = False

    'We work backwards because we are deleting rows.

    For i = Selection.Rows.Count To 1 Step -1
        If WorksheetFunction.CountA(Selection.Rows(i)) = 0 Then
            Selection.Rows(i).EntireRow.Delete
        End If
    Next i
        .Calculation = xlCalculationAutomatic

        .ScreenUpdating = True

    End With

End Sub

Est ce que quelqu'un aurait une solution? 🙂

merci d'avance!
 

Pièces jointes

Re : Suppression de lignes vides

Bonjour tout le monde,

Le problème est que le nombre de cellules qui semblent vides (et ne le sont pas toujours!), ce nombre donc est variable. Le tout serait-il le résultat d'un import depuis une autre application? Si oui, n'y aurait-il pas moyen d'intervenir à ce niveau-là? Ce qui est certain, c'est que les CountA, CountBlank, ... donnent des résultats différents dans certaines lignes.
Si la macro d'Efgé faisait plus que demandé, il n'en reste pas moins vrai que le fait de passer par un tableau éliminait les données "polluantes" (du moins m'a-t-il semblé!)
En ajoutant cette procédure, avant la suppression des lignes, le reste du code peut s'exécuter:
VB:
With Sheets("All data")
    tablo = .Range("A2").CurrentRegion
    .Cells.Clear
    .Range("A2").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo
End With
 
- 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

Réponses
2
Affichages
436
Réponses
6
Affichages
963
K
Réponses
5
Affichages
899
L
Réponses
9
Affichages
1 K
Réponses
8
Affichages
1 K
A
Réponses
20
Affichages
2 K
Aurélie13008
A
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…