Excel中的随机数数组

Cal*_*mDA 3 excel vba excel-vba excel-formula

如何使用RANDRANDBETWEEN函数创建一个随机数组?

我试图在一个公式中模拟10卷六面模(例如)的平均结果?


我过去曾尝试过以下内容,但它只会创建一个随机数并重复它.

=SUMPRODUCT((ROW(A1:A10)^0)*(INT(RAND()*6)+1))/10
Run Code Online (Sandbox Code Playgroud)

Cal*_*mDA 7

RANDBETWEEN函数可以处理数组输入.所以

=RANDBETWEEN(ROW(1:10)^0,6)
Run Code Online (Sandbox Code Playgroud)

有效地创造:

=RANDBETWEEN({1;1;1;1;1;1;1;1;1;1},{6;6;6;6;6;6;6;6;6;6})
Run Code Online (Sandbox Code Playgroud)

它返回10种不同的随机数的1和6之间这阵列可以很容易地通过改变被改变为100(或然而,许多)的随机数A1:A10A1:A100.


因此,平均10个独立骰子卷的单一公式可以是:

=SUMPRODUCT(RANDBETWEEN(ROW(A1:A10)^0,6)/10
Run Code Online (Sandbox Code Playgroud)

或等效的CSE公式

{=AVERAGE(RANDBETWEEN(ROW(A1:A10)^0,6))}
Run Code Online (Sandbox Code Playgroud)