Transposé d'un tableau avec conditions

Bonjour,

j'ai fait une macro Excel qui fait un transposé d'un tableau (voir fichier joint).

je veux maintenant avoir juste les cases colorés dans le tableau dans la Feuille 2.

Merci d'avance.

Bonjour,

Il suffit d'ajouter les Interior.ColorIndex à ton code.

Comme ceci :

Sub test()
k = 1
For i = 2 To Feuil1.Cells(2, 2) + 1
    For j = 3 To Feuil1.Cells(1, 2) + 2
        Feuil2.Cells(k, 1) = Feuil1.Cells(i, 3)
        Feuil2.Cells(k, 2) = Feuil1.Cells(1, j + 1)
        Feuil2.Cells(k, 3) = Feuil1.Cells(i, j + 1)
        Feuil2.Cells(k, 1).Interior.ColorIndex = Feuil1.Cells(i, 3).Interior.ColorIndex
        Feuil2.Cells(k, 2).Interior.ColorIndex = Feuil1.Cells(1, j + 1).Interior.ColorIndex
        Feuil2.Cells(k, 3).Interior.ColorIndex = Feuil1.Cells(i, j + 1).Interior.ColorIndex
        k = k + 1
    Next
Next
End Sub

Merci pour votre réponse mais je veux juste avoir le contenu des cellules coloré en jaune.

Autre interprétation de ta question : obtenir en Feuil2, uniquement les valeurs dont les cellules sont colorées en Feuil1.

Dans ce cas, pour la couleur jaune (ColorIndex = 6), voici :

Sub test()
k = 1
For i = 2 To Feuil1.Cells(2, 2) + 1
    For j = 3 To Feuil1.Cells(1, 2) + 2
        If Feuil1.Cells(i, j + 1).Interior.ColorIndex = 6 Then
            Feuil2.Cells(k, 1) = Feuil1.Cells(i, 3)
            Feuil2.Cells(k, 2) = Feuil1.Cells(1, j + 1)
            Feuil2.Cells(k, 3) = Feuil1.Cells(i, j + 1)
            k = k + 1
        End If
    Next
Next
End Sub

Sa marche,

Merci bien

Rechercher des sujets similaires à "transpose tableau conditions"