Try:
Sub CopyCol()
Application.ScreenUpdating = False
Sheets("Sheet1").Activate
Dim lCol1 As Long
lCol1 = Sheets("Sheet1").Range("IV1").End(xlToLeft).Column
Dim colHeader As Range
Dim foundVal As Range
For Each colHeader In Sheets("Sheet1").Range(Cells(1, 1), Cells(1, lCol1))
With Sheets("Sheet2").Rows(1)
Set foundVal = .Find(what:=colHeader, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not foundVal Is Nothing Then
Columns(colHeader.Column).Copy Sheets("Sheet2").Cells(1, foundVal.Column)
End If
End With
Next colHeader
Application.ScreenUpdating = True
End Sub
Bookmarks