如何在Excel中生成这个特定的随机数?

jdzmm42g  于 2023-03-20  发布在  其他
关注(0)|答案(4)|浏览(206)

该数字的长度必须为12,小数点后2位。
也许有一个解决方案与“=兰德()"。

8wigbo56

8wigbo561#

答案很多,但我的解决方案是:

=RANDBETWEEN(1000000000,9999999999)+RANDBETWEEN(1,99)/100

这个公式将产生一个随机数和一个随机小数位,小数位数是通过将小数位数除以100并将它们加到整数上而产生的。
确保将单元格格式设置为带2位小数的数字。

fykwrbwg

fykwrbwg2#

  • 数字应介于100000000,00和999999999,99之间 *

您可以:

=RANDBETWEEN(1000000000;9999999999)+ROUND(RAND();2)

因为您要处理的数字非常大,所以请记住将单元格格式设置为带2位小数的数字,否则您将看不到结果!:

30byixjq

30byixjq3#

这绝对不是最好的方法。它效率不高,而且会有更好的数学方法,但它确实有效,确实能保证你的所有要求。它也很容易看到它在做什么,并在需要时进行调整。

=CONCAT(
    RANDBETWEEN(1000000000,9999999999),
    ".", 
    RANDBETWEEN(0,99)
)+0

这将数字构造为小数点前后两个随机整数的字符串。+0只是确保Excel将结果视为数字而不是文本。

v09wglhw

v09wglhw4#

有必要把小数部分和整数部分分开生成吗?也许你可以这样做:

=RANDBETWEEN(10^10,10^11-1)/100

格式为数字(如果希望总长度为12(包括小数点))。
正如@Gravitate所建议的,如果需要长度为12(不包括小数点),则为

=RANDBETWEEN(10^11,10^12-1)/100

或者一般来说

=LET(n,12,d,2,RANDBETWEEN(10^(n-1),10^n-1)/10^d)

其中n是不包括小数点的位数,d是小数位数。
但您需要手动调整格式或使用以下命令使其正确显示:

=LET(n,12,d,2,TEXT(RANDBETWEEN(10^(n-1),10^n-1)/10^d,"0."&REPT("0",d)))

相关问题