Bonjour,
Je vois qu'il y a déjà une solution... Je donne tout de même la mienne :
Sub Consolidation()
Dim F1, F2 As Worksheet
Dim Cel As Range, c As Range
Dim i, der_col As Integer
Set F1 = Worksheets("Feuil1")
Application.ScreenUpdating = False
der_col = Range("IV1").End(xlToLeft).Column
For Each Cel In F1.Range(Cells(1, 4), Cells(1, der_col))
Set c = F1.Rows(1).Find(Cel, , xlValues, xlWhole)
If Cel.Address <> c.Address Then
Range(Cells(1, Cel.Column), Cells(15, Cel.Column)).Copy
Range(Cells(1, c.Column), Cells(15, c.Column)).PasteSpecial Paste:=xlPasteValues, Skipblanks:=True
Cells(1, Cel.Column).EntireColumn.Clear
End If
Next
For i = 256 To 1 Step -1
If Cells(65536, i).End(xlUp).Row = 1 Then Cells(1, i).EntireColumn.Delete
Next i
End Sub