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.

user426110
la source

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.

Gary's Student
la source