Sub test()
Const cols = "CODE_WORKORDER;DESCRIPTION;REALENDDATE;TOTO;PRIORITY;STATUS;FK_CODE_SITE;TARGENDDATE"
Dim s, entete, col&, n&, derlig&
Application.ScreenUpdating = False
s = Split(cols, ";")
With Sheets("TBL_WORKORDER")
derlig = .UsedRange.Row + .UsedRange.Rows.Count - 1
Sheets("Result").Columns.Clear
Sheets("Result").Rows(1).Font.ColorIndex = xlColorIndexAutomatic
On Error Resume Next
For Each entete In s
col = 0
col = Application.Match(entete, Sheets("TBL_WORKORDER").Rows(1), 0)
If col = 0 Then
n = n + 1
Sheets("Result").Cells(1, n) = entete & " ?"
Sheets("Result").Cells(1, n).Font.Color = RGB(255, 0, 0)
Else
n = n + 1
.Columns(col).Resize(derlig).Copy Sheets("Result").Cells(1, n)
End If
Next entete
On Error GoTo 0
Application.Goto Sheets("Result").Cells(1, 1), True
End With
End Sub