Sub CopieColonnes()
Application.ScreenUpdating = False
With Sheets("Paramètres") ' Tableau liste colonnes
DL = .Cells(.Cells.Rows.Count, "A").End(xlUp).Row
ListeCol = .Range("A2:A" & DL)
End With
With Sheets("Export") ' Tableau export
DL = .Cells(.Cells.Rows.Count, "A").End(xlUp).Row
DC = .Cells(1, .Columns.Count).End(xlToLeft).Column
Export = .Range(.Cells(1, 1), .Cells(DL, DC))
End With
' Restitution
ReDim Trait(1 To UBound(Export), 1 To UBound(Export, 2))
Cells.ClearContents
For C = 1 To UBound(ListeCol)
Nom = ListeCol(C, 1) ' Nom colonne
For C2 = 1 To UBound(Export, 2)
If Export(1, C2) = Nom Then
For L = 1 To UBound(Export)
Trait(L, C) = Export(L, C2) ' Si ok alors on transfert la colonne
Next L
End If
Next C2
Next C
[A1].Resize(UBound(Trait, 1), UBound(Trait, 2)) = Trait ' On restitue les données
End Sub