首页 > 解决方案 > 如何在 Excel 中生成 n 个介于 -100 到 100 之间且总和为零的随机数?

问题描述

如何在 Excel 中生成 n 个介于 -100 到 100 之间且总和为零的随机数?就像我想要 100 -50 -50 30 -30

基本上是 0 的随机数

标签: excel

解决方案


在单元格B1中输入公式:

=SUM(A:A)

运行这个简短的宏:

Sub dural()
    Dim N As Long, A As Range
    Set A = Range("A:A")

    N = Application.InputBox(Prompt:="Enter number of samples", Type:=1)
    A.Clear
    Range("A1:A" & N - 1).Formula = "=RandBetween(-100, 100)"

    Do While Abs(Range("B1")) > 100
        Calculate
    Loop

    A.Value = A.Value
    Range("A" & N).Value = -Range("B1").Value
End Sub

宏将询问您需要的样本数量,然后用 N-1 个样本填充A列。计算第 N以使总和为零。


推荐阅读