|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
Option Explicit
Sub test()
Dim arr, i, n, sum
arr = Range("a2:b" & [a2].End(xlDown).Row) '34个数
Randomize
sum = ubound(arr,1)
For i = 1 To UBound(arr, 1) - 1
n = Round(0.5 + Rnd, 2) '0.5-1.5范围
arr(i, 1) = n
sum = sum - n
If i = UBound(arr, 1) - 1 Then
If sum >= 0.5 Then
arr(i + 1, 1) = sum
Else
sum = UBound(arr, 1): i = 0
End If
Else
If sum <= 0 Then sum = UBound(arr, 1): i = 0
End If
Next
[b2].Resize(UBound(arr, 1)) = arr
End Sub |
评分
-
1
查看全部评分
-
|