Oder so:
Code:
Private Sub CB_000_Click()
sn = Sheet1.Cells(1).CurrentRegion
sp = Sheet2.Cells(1).CurrentRegion
Cells(1, 100).Resize(UBound(sn)).Name = "snb"
[snb] = "=rand()"
For j = 1 To UBound(sp, 2)
Sheet2.Cells(2, j).Resize(UBound(sn)) = Application.Index(sn, [index(rank(snb,snb),)])
Next
End Sub