Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

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 caché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

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

Onglet Office Activer l'édition et la navigation par onglets dans Office, et simplifiez grandement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, graphiques et autres éléments les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement.
  • Plus que le texte 20 comprend: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Fusionner les outils: Plusieurs classeurs et feuilles en un; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils Split: Fractionner les données en plusieurs feuilles en fonction de la valeur; Un classeur pour plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller Sauter Lignes cachées / filtrées; Compte et somme par couleur de fond; Envoyez des e-mails personnalisés à plusieurs destinataires en bloc.
  • Super filtre: Créez des schémas de filtrage avancés et appliquez-les à toutes les feuilles. Trier par semaine, jour, fréquence et plus; Filtre en gras, formules, commentaires ...
  • Plus que de puissantes fonctionnalités 300; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.

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. S'il vous plaît faire comme suit.

1. Activez la feuille de calcul dont vous avez besoin pour supprimer les lignes masqué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. Ensuite, 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 l'exécution du code, une boîte de dialogue s'affichera pour vous indiquer combien de lignes cachées ont été supprimées. Clique le OK bouton pour supprimer les lignes cachées. Voir la capture d'écran:

doc supprimer reste 1

Sinon, vous obtiendrez la boîte de dialogue suivante après l'exécution du code.

doc supprimer reste 1

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


Supprimer les lignes visibles de la liste filtrée avec la sélection de toutes les cellules visibles

Pour supprimer des lignes visibles d'une 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 Spécial 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 option, puis cliquez sur le OK .

doc supprimer reste 1

3. Maintenant, toutes les lignes visibles sont sélectionnées, faites un clic 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.


Supprimer 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 de désir pour de nombreux utilisateurs d'Excel, ici nous vous présentons un outil pratique. Avec le Supprimer les lignes et les colonnes cachées (visibles) utilité de Kutools for Excel, vous pouvez facilement supprimer les lignes cachées dans les plages / feuilles sélectionnées, la feuille active ou toutes les feuilles de calcul dans Excel.

Kutools for Excel : avec plus de 300 compléments Excel pratiques, gratuit pour essayer sans limitation dans 60 jours.

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

2. dans le Supprimer les lignes et colonnes cachées (visibles) boîte de dialogue, sélectionnez Dans la plage sélectionnée le Regarder dans liste déroulante (vous pouvez sélectionner d'autres options selon vos besoins), vérifiez 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 comme vous avez besoin. Et enfin cliquez sur le OK bouton. Voir la capture d'écran:

doc supprimer reste 1

3. Ensuite, une boîte de dialogue apparaît pour vous dire combien de lignes ont été supprimées, s'il vous plaît cliquez sur le OK .

doc supprimer reste 1


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

Kutools for Excel comprend plus de 300 outils maniables Excel. Gratuit pour essayer sans limitation dans les jours 60. Téléchargez l'essai gratuit maintenant!


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

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

  • Activer l'édition par onglets et la lecture 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 le nombre de clics de souris pour vous chaque jour!
fond officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    worded · 16 days ago
    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?
  • To post as a guest, your comment is unpublished.
    Bill · 4 months ago
    VBA code to Delete hidden rows worked perfectly with no fiddling. THANK YOU!!
  • To post as a guest, your comment is unpublished.
    Maximillian Eckemoff · 1 years ago
    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?
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      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