Option Explicit
Sub MoveFields()
Dim Rng As Range: Dim StrC As String
Const sChuan = "Agent Charge" & "/" & "Charge" & "/" & "Comm" & "/" & "CustDiscVAL" _
& "/" & "CustID" & "/" & "Discount" & "/" & "Fare" & "/" & "FTKT" & "/" & "NetToAL" _
& "/" & "Qty" & "/" & "RCPID" & "/" & "RCPNo" & "/" & "RecID" & "/" & "SRV" & _
"/" & "Tax" & "/" & "TKTNo" & "/GPE.COM"
Dim bSoTrg As Byte, bJ As Byte, bVtr As Byte, bW As Byte
Sheets("TKT1").Select: StrC = sChuan
Set Rng = Range([a1], [iV1].End(xlToLeft)): bSoTrg = Rng.Cells.Count
Application.ScreenUpdating = False: Set Rng = Nothing
For bJ = 1 To bSoTrg
bVtr = InStr(1, StrC, "/")
If Left(StrC, bVtr - 1) <> Cells(1, bJ) Then
For bW = bJ To bSoTrg
If Cells(1, bW) = Left(StrC, bVtr - 1) Then
Chuyen1Cot Cells(1, bW), Cells(1, bJ)
End If
Next bW
End If
StrC = Mid(StrC, bVtr + 1, Len(StrC))
Next bJ
End Sub