Passer au contenu principal

Comment filtrer une liste et supprimer les autres lignes cachées ou visibles dans Excel?

Pour une liste filtrée, vous devrez peut-être supprimer les lignes masquées ou visibles afin de ne conserver que les données utiles. Dans cet article, nous allons vous montrer les méthodes de suppression des autres lignes cachées ou visibles d'une liste filtrée dans Excel.

Supprimer les lignes cachées dans la feuille de calcul active avec le code VBA
Supprimer les lignes visibles de la liste filtrée en sélectionnant toutes les cellules visibles
Supprimez facilement les lignes masquées ou visibles de la liste filtrée avec Kutools for Excel


Supprimer les lignes cachées dans la feuille de calcul active avec le code VBA

Cette section vous montrera le code VBA pour supprimer les lignes cachées dans la feuille active. Veuillez faire comme suit.

1. Activez la feuille de calcul dont vous avez besoin pour supprimer les lignes cachées, appuyez sur autre + F11 touches simultanément pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Dans la fenêtre Microsoft Visual Basic pour Applications, cliquez sur insérer > Module. Et puis copiez et collez le code VBA ci-dessous dans la fenêtre Module.

Code VBA: supprimer les lignes cachées

Sub RemoveHiddenRows()
	Dim xRow As Range
	Dim xRg As Range
	Dim xRows As Range
	On Error Resume Next
	Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
	If xRows Is Nothing Then Exit Sub
		For Each xRow In xRows.Columns(1).Cells
			If xRow.EntireRow.Hidden Then
				If xRg Is Nothing Then
					Set xRg = xRow
				Else
					Set xRg = Union(xRg, xRow)
				End If
			End If
		Next
		If Not xRg Is Nothing Then
			MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
			xRg.EntireRow.Delete
		Else
			MsgBox "No hidden rows found", , "Kutools for Excel"
		End If
	End Sub

3. appuie sur le F5 clé pour exécuter le code. S'il y a des lignes cachées dans la feuille active, après avoir exécuté le code, une boîte de dialogue apparaîtra pour vous dire combien de lignes cachées ont été supprimées. Clique le OK bouton pour supprimer les lignes masquées. Voir la capture d'écran:

doc supprimer reste 1

Sinon, vous obtiendrez la boîte de dialogue suivante après avoir exécuté le code.

doc supprimer reste 1

Notes: le code VBA ci-dessus peut non seulement supprimer les lignes cachées de la liste filtrée, mais également supprimer les lignes cachées que vous avez masquées manuellement auparavant.


Supprimer les lignes visibles de la liste filtrée en sélectionnant toutes les fonctionnalités de cellules visibles

Pour supprimer les lignes visibles de la liste filtrée, procédez comme suit.

1. Sélectionnez toutes les lignes filtrées et appuyez sur F5 clé pour ouvrir le Aller à boîte de dialogue, puis cliquez sur le # bouton. Voir la capture d'écran:

doc supprimer reste 1

2. dans le Aller à Spécial boîte de dialogue, vérifiez le Cellules visibles uniquement , puis cliquez sur le OK .

doc supprimer reste 1

3. Toutes les lignes visibles sont maintenant sélectionnées, cliquez avec le bouton droit sur la sélection, puis cliquez sur Supprimer les lignes.

doc supprimer reste 1

Jusqu'à présent, toutes les lignes visibles sont supprimées de la liste filtrée.


Supprimez facilement les lignes masquées ou visibles de la liste filtrée avec Kutools for Excel

Les deux méthodes ci-dessus peuvent ne pas être les solutions souhaitées par de nombreux utilisateurs d'Excel, nous vous présentons ici un outil pratique. Avec la Supprimer les lignes et colonnes masquées (visibles) utilité de Kutools for Excel, vous pouvez facilement supprimer les lignes masquées dans la plage / les feuilles sélectionnées, la feuille active ou toutes les feuilles de calcul dans Excel.

Avant d'appliquer Kutools for Excel, S'il vous plaît téléchargez et installez-le d'abord.

1. Si vous souhaitez uniquement supprimer les lignes masquées ou visibles d'une liste filtrée, sélectionnez la plage filtrée manuellement, puis cliquez sur Kutools > Supprimer > Supprimer les lignes et colonnes masquées (visibles). Voir la capture d'écran:

2. dans le Supprimer les lignes et les colonnes masquées (visibles) boîte de dialogue, conservez le Dans la plage sélectionnée sélectionné dans le Regarder dans liste déroulante (vous pouvez sélectionner d'autres options selon vos besoins), vérifiez la rangées option dans la Supprimer le type section, et dans la Type détaillé section, vérifier Lignes visibles or Lignes cachées option selon vos besoins. Et enfin cliquez sur le OK .

3. Ensuite, une boîte de dialogue apparaît pour vous dire combien de lignes ont été supprimées, veuillez cliquer sur le OK .

  Si vous souhaitez bénéficier d'un essai gratuit (30 jours) de cet utilitaire, veuillez cliquer pour le télécharger, puis passez à appliquer l'opération selon les étapes ci-dessus.


Supprimez les lignes masquées ou visibles de la liste filtrée avec Kutools for Excel

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
Comments (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi this VBA code is awesome useful.
This comment was minimized by the moderator on the site
Thanks for the info. This has been instructive. Please is there a way to filter and delete for specific numbers in rows of up to 1 million? Can the code above be modified to do so?
This comment was minimized by the moderator on the site
Hi,
Sorry did not test the code in such huge row data. Maybe you can make a copy of your data and test if the code can work.
This comment was minimized by the moderator on the site
VBA code to Delete hidden rows worked perfectly with no fiddling. THANK YOU!!
This comment was minimized by the moderator on the site
Feedback re: the macro for hidden row deletions - this takes too long to run on 900k rows to be useful. 2+ hours on an OC'd Threadripper 1950X and still running (had to end task). Any way to optimize it to use multiple cores or is this a VBA limitation?
This comment was minimized by the moderator on the site
Hi,
The code has been optimized. Please have a try. Thank you for your comment.

Sub RemoveHiddenRows()
Dim xFlag As Boolean
Dim xStr, xTemp As String
Dim xDiv, xMod As Long
Dim I, xCount, xRows As Long
Dim xRg, xCell, xDRg As Range
Dim xArr() As String
On Error Resume Next
Application.ScreenUpdating = False
Application.EnableEvents = False
Set xRg = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
If xRg Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
Set xRg = xRg(1)
xFlag = True
xTemp = ""
xCount = 0
For I = 1 To xRows
Set xCell = xRg.Offset(I - 1, 0)
Do While xFlag
If xCell.EntireRow.Hidden Then
xStr = xCell.Address
xFlag = False
Else
GoTo Ctn
End If
Loop
If xCell.EntireRow.Hidden Then
xTemp = xStr & "," & xCell.Address
End If
If Len(xTemp) > 171 Then
xCount = xCount + 1
ReDim Preserve xArr(1 To xCount)
xArr(xCount) = xStr
xStr = xCell.Address
Else
xStr = xTemp
End If
Ctn:
Next
xCount = xCount + 1
ReDim Preserve xArr(1 To xCount)
xArr(xCount) = xStr
For I = xCount To 1 Step -1
If I = 1 Then
xStr = Mid(xArr(I), InStr(xArr(I), ",") + 1, Len(xArr(I)) - InStr(xArr(I), ","))
Else
xStr = xArr(I)
End If
If xDRg Is Nothing Then
Set xDRg = Range(xStr)
Else
Set xDRg = Union(xDRg, Range(xStr))
End If
If (Len(xDRg.Address) >= 244) Or (xCount = 1) Then
xDRg.EntireRow.Delete
Set xDRg = Nothing
End If
Next
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Awesome, thank you! Will review at my next opportunity / need for this and reply back.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations