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 supprimer des lignes en fonction de la couleur d'arrière-plan dans Excel?

Comment pouvez-vous supprimer des lignes entières en fonction de la couleur de fond? Dans cet exemple, j'ai besoin de supprimer toutes les lignes dont les cellules sont remplies avec la couleur d'arrière-plan bleu comme suit capture d'écran. Avec cet article, vous obtiendrez des codes pour réaliser cette tâche dans Excel.

doc supprimer les lignes par couleur 1

Supprimer les lignes avec une couleur d'arrière-plan spécifique en fonction de chaque cellule

Supprimer les lignes avec une couleur d'arrière-plan spécifique basée sur une colonne


flèche bleue droite bulle Supprimer les lignes avec une couleur d'arrière-plan spécifique en fonction de chaque cellule

Si vous disposez d'une plage de données remplies aléatoirement avec certaines couleurs de cellule et que vous devez supprimer les lignes dont la couleur est bleue comme suit:

doc supprimer les lignes par couleur 2

Pour supprimer ce type de lignes, vous pouvez utiliser le code VBA suivant, procédez comme suit:

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: supprime les lignes dont les cellules contiennent une couleur de remplissage spécifique:

Sub DeleteRows()
'Updateby Extendoffice 20161116
    Dim rngCl As Range
    Dim xRows As Long
    Dim xCol As Long
    Dim colorLg As Long
    On Error Resume Next
    Set rngCl = Application.InputBox _
        (Prompt:="Select a cell with the background color to be deleted", _
        Title:="Kutools for Excel", Type:=8)
    On Error GoTo 0
    If rngCl Is Nothing Then
        MsgBox "User cancelled operation." & vbCrLf & _
        "Processing terminated", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    colorLg = rngCl.Interior.Color
    Application.ScreenUpdating = False
    With ActiveSheet.UsedRange
        For xRows = .Rows.Count To 1 Step -1
            For xCol = 1 To .Columns.Count
                           If .Cells(xRows, xCol).Interior.Color = colorLg Then
                    .Rows(xRows).Delete
                    Exit For
                End If
            Next xCol
        Next xRows
    End With
    Application.ScreenUpdating = True
End Sub

3. Et puis appuyez sur F5 clé pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous rappeler de sélectionner une cellule avec la couleur de remplissage que vous souhaitez supprimer, voir capture d'écran:

doc supprimer les lignes par couleur 3

4. Puis clique OK, et toutes les lignes ont été supprimées si la cellule avec une couleur de remplissage spécifique.


flèche bleue droite bulle Supprimer les lignes avec une couleur d'arrière-plan spécifique basée sur une colonne

Si vous souhaitez supprimer les lignes avec une couleur spécifique basée sur une seule colonne, par exemple, supprimer les lignes avec la couleur bleue dans la colonne A et obtenir la capture d'écran ci-dessous, voici également un code VBA peut vous faire une faveur.

doc supprimer les lignes par couleur 4

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: supprime les lignes basées sur une colonne dont les cellules ont une couleur de remplissage spécifique:

Sub deleterow()
'UpdateBY Extendoffice 20161116
   Dim xRg As Range, rgDel As Range
    For Each xRg In ThisWorkbook.ActiveSheet.Range("A2:A21")
        If xRg.Interior.ColorIndex = 20 Then
            If rgDel Is Nothing Then
                Set rgDel = xRg
            Else
                Set rgDel = Union(rgDel, xRg)
            End If
        End If
    Next xRg
    If Not rgDel Is Nothing Then rgDel.EntireRow.Delete
End Sub

Note: Dans le code ci-dessus, A2: A21 est la colonne qui contient la couleur de remplissage spécifique que vous souhaitez supprimer les lignes sur la base, le nombre 20 in ColorIndex = 20 script est l'index de couleur sur lequel vous souhaitez supprimer les lignes. Vous pouvez les changer selon vos besoins.

3. Puis appuyez F5 clé pour exécuter ce code, et toutes les lignes dont les cellules contiennent la couleur bleue dans la colonne A ont été supprimées à la fois.



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

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.

Be the first to comment.