|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
Option Explicit
Sub test()
Dim arr, i, j, mark, m, n, t
' -----------这段注释掉,是给你看的
ReDim arr(1 To 30, 1 To 1)
For i = 1 To UBound(arr, 1)
arr(i, 1) = i
Next
[a1].Resize(UBound(arr, 1)) = arr
'------------
mark = Split("一等奖,1,二等奖,2,三等奖,4", ",")
arr = [a1].CurrentRegion.Resize(, 2)
For i = 0 To UBound(mark) Step 2
For j = 1 To mark(i + 1)
m = m + 1
n = Int(Rnd * (UBound(arr, 1) - m + 1)) + m
t = arr(m, 1): arr(m, 1) = arr(n, 1): arr(n, 1) = t
arr(m, 2) = arr(m, 1): arr(m, 1) = mark(i)
Next
Next
With [c1]
.Resize(Rows.Count, 2).ClearContents
.Resize(m, 2) = arr
End With
End Sub |
评分
-
1
查看全部评分
-
|