Sub test()
Dim A, B, i, j, k
A = .Resize(1, 30)
B = Range("b9:m" & Range("b65536").End(xlUp).Row)
For i = 1 To UBound(B)
For j = 1 To 3
For k = 1 To 3
B(i, j * 3 + k) = A(1, (B(i, j) - 1) * 3 + k)
Next k
Next j
Next i
.Resize(UBound(B), UBound(B, 2)) = B
End Sub