Excel VBA Insérer des lignes au-dessus des cellules avec une mise en forme spécifique [fermé]


0

Je ne suis pas très bon en VBA mais j'ai déjà cherché une réponse en ligne pendant des heures. J'espère que vous pourrez m'aider.

J'aimerais insérer des lignes au-dessus des cellules remplies d'une couleur spécifique (deux index de couleurs différents). Est-ce réellement possible? Je n'ai que du texte dans la colonne A. Il me faudrait donc une sorte de formule, telle que "si une cellule de la colonne A est noire ou grise (colorindex 1 et?), Insérez une ligne blanche vierge au-dessus.

Merci beaucoup pour vos réponses.

Réponses:


1

Avec des données comme:

enter image description here

Lancer cette macro:

Sub RowYourBoat()
    Dim r1 As Range, r2 As Range, r3 As Range
    Set r1 = Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row)
    Set r3 = Nothing

    For Each r2 In r1
        If r2.Interior.ColorIndex = 1 Then
            If r3 Is Nothing Then
                Set r3 = r2
            Else
                Set r3 = Union(r3, r2)
            End If
        End If
    Next r2

    If r3 Is Nothing Then
    Else
        r3.EntireRow.Insert
    End If
End Sub

produira:

enter image description here

Ceci est pour le noir, le ColorIndex car le gris dépend de la nuance de gris que vous utilisez.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.