Sub xapxep()
Application.ScreenUpdating = False
Dim arr, I As Long, kq, lr As Long, lc As Long, b As Long, dk As String, J As Integer, a As Long, dks As String, c As Long
With Sheets("Original Data")
lr = .Range("B" & Rows.Count).End(xlUp).Row
lc = .Cells(1, Columns.Count).End(xlToLeft).Column '+ 3
arr = .Range("A1:A" & lr).Resize(, lc).Value
ReDim kq(1 To UBound(arr), 1 To 7)
End With
dk = arr(2, 2)
dks = arr(1, 7)
b = 3
c = 7
For I = 2 To UBound(arr)
kq(I - 1, 1) = arr(I, 1)
kq(I - 1, 2) = arr(I, 2)
If dk <> arr(I, 2) Then
b = c + 1
Do
c = c + 1
If arr(1, c) = dks Then
If arr(I, b) <> Empty Then
Exit Do
Else
b = c + 1
End If
End If
Loop
dk = arr(I, 2)
End If
For J = 3 To 7
kq(I - 1, J) = arr(I, J + b - 3)
Next J
Next I
With Sheets("ketqua")
lr = .Range("B" & Rows.Count).End(xlUp).Row
If lr > 1 Then .Range("A2:G" & lr).ClearContents
.Range("A2:G2").Resize(I - 1).Value = kq
End With
Application.ScreenUpdating = True
End Sub