Option Explicit
Sub Chuyen()
Dim Sh As Worksheet, Rng As Range, sRng As Range, Cls As Range, Rg0 As Range
Set Sh = ThisWorkbook.Worksheets("Sheet1")
Set Rng = Sh.Range(Sh.[h1], Sh.[h1].End(xlDown))
Set Rg0 = Range([A2], [A2].End(xlDown))
For Each Cls In Rg0
Set sRng = Rng.Find(Cls.Value, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
sRng.Offset(, 1).Value = sRng.Value
sRng.Value = ""
Cls.Value = ""
Else
Cls.End(xlUp).Offset(1).Value = Cls.Value
If Cls.Address <> Rg0(1).Address Then Cls.Value = ""
End If
Next Cls
End Sub