Dim gstop
Sub demo()
Randomize
a = Sheet3.UsedRange
cnt = a(UBound(a), 2)
ReDim s(1 To cnt), n(1 To cnt)
For i = 2 To UBound(a) - 1
For j = 1 To a(i, 2)
c = c + 1: s(c) = a(i, 1): n(c) = c
Next
Next
Sheet6.[a2:g1000].ClearContents
b = Sheet4.Range("a2:g" & Sheet4.[a2].End(4).Row)
cnt = Application.Min(cnt, UBound(b))
gstop = 0
Do While gstop = 0
For i = 1 To cnt
k = i + Int(Rnd * (cnt - i + 1))
tmp = s(i): s(i) = s(k): s(k) = tmp
tmp = n(i): n(i) = n(k): n(k) = tmp
b(i, 6) = s(i): b(i, 7) = n(i)
Next
Sheet6.[a2].Resize(cnt, 7) = b
DoEvents
Loop
End Sub
Sub mystop()
gstop = 1
End Sub
祝順心,南無阿彌陀佛!