bonsoir,
une proposition via une macro
Sub aargh()
k = 3 'n° de ligne sur tableau résultat
With Sheets("feuil3") 'on travaille avec la feuille nommée feuil3, toutes les méthodes ou propriétés commençant par un "." dans le instruction qui suivent jusqu'au prochain with ou end with, appartiennent à feuil3
dl = .Cells(Rows.Count, 3).End(xlUp).Row 'dernière ligne utilisée en colonne 3 (ou C)
For i = 4 To dl 'on prend les n° de lignes de 4 à dl
If .Cells(i, 4) = "a" Then 'si "a" en colonne 4 (ou D)
k = k + 1 'on incrémente le n° de ligne résultat
c = 6 'n° de colonne résultat = 6
.Cells(k, 6) = .Cells(i, 3) ' on met le code de "a" (trouvé en colonne 3) dans résultat (ligne k, colonne 6)
Else 'sinon pas "a" en colonne 4
c = c + 1 'on incrémente le n° de colonne
.Cells(k, c) = .Cells(i, 4) ' on met le contenu de la colonne 4 dans résultat (ligne k, colonne c)
End If
Next i 'ligne suivante
End With
End Sub
il faut supprimer les formules ou mettre ton classeur en mode calcul manuel, sinon tu ne verras pas l'amélioration