Option Explicit
Sub test()
Dim arr, brr, i As Long, j As Long, k As Long, t As String
arr = [b2:k2].Value
ReDim mark(1 To UBound(arr, 2)) As String
For i = 1 To UBound(mark)
mark(i) = arr(1, i)
Next
arr = Range("b3:k" & Cells(Rows.Count, "b").End(xlUp).Row).Value
For i = 1 To UBound(arr, 1)
brr = mark
For j = 1 To UBound(arr, 2) - 1
For k = 1 To UBound(arr, 2) - j
If Val(arr(i, k)) < Val(arr(i, k + 1)) Then
t = arr(i, k): arr(i, k) = arr(i, k + 1): arr(i, k + 1) = t
t = brr(k): brr(k) = brr(k + 1): brr(k + 1) = t
End If
Next
Next
For j = 2 To UBound(brr)
brr(1) = brr(1) & brr(j)
Next
arr(i, 1) = brr(1)
Next
[l3].Resize(UBound(arr, 1)) = arr
End Sub |