vba编辑生成一个B1B2范围内的随机小数A,小数点保存两位,然后生成B3B4范围内9个随机小数,小数点也保存两位,将A分别与9个随机小数相加,将结果放到D4-D6, D11-D13, D18D-D10
时间: 2024-10-20 15:05:27 浏览: 14
在VBA中,你可以使用`Rnd`函数生成随机数,并结合数组或For循环来完成这个任务。这里是一个简单的示例代码:
```vba
Sub GenerateRandomNumbers()
' 定义变量
Dim A As Double
Dim B(1 To 9) As Double
Dim C(1 To 3) As Double
' 生成A的值,保留两位小数
A = Format(Rnd * (B2 - B1 + 0.01), "0.00")
' 生成B1:B4范围内的九个小数,保留两位小数
For i = 1 To 9
B(i) = Format(Rnd * (B4 - B3 + 0.01), "0.00")
Next i
' 将A与每个B数组元素相加并存储到C数组中
For i = 1 To 3
C(i) = A + B((i - 1) * 3 + 1) ' 因为你有三个区间,每区间的第一个随机数对应D列
Next i
' 输出结果到D4:D6, D11:D13, D18:D20
Range("D4").Value = C(1)
Range("D5:D6").Value = Application.Transpose(C(2:3)) ' Transpose用于转置行向量
Range("D11:D13").Value = Application.Transpose(C(4:6))
Range("D18:D20").Value = Application.Transpose(C(7:9))
End Sub
```
阅读全文