Venkataramanan需要生成-99到+99范围内的随机数,不包括一位数字(-9到+9)。他想知道是否有办法完成任务。

有几个工作表函数通常用于在Excel中生成随机数。 RAND函数用于生成0到1之间的随机数,而RANDBETWEEN函数用于生成数字范围内的随机数。

没有函数可以执行Venkataramanan想要的操作,但是您可以编写一个可以解决问题的公式。考虑以下公式:

=IF(RAND()>0.5,1,-1)*(RANDBETWEEN(10,99))

第一个RAND函数确定结果是’+’还是’-‘,下一个RANDBETWEEN函数返回期望的10到99之间的数字。完成该功能后,您将拥有所需的两位数随机数。

另一个公式本质上类似:

=ROUND(RAND()89+10,0)((RAND()<0.5)*2-1)

第一部分生成0到89范围内的整数。该公式将10加上整数,有效地得到10到99之间的数字。然后,该公式的第二部分用于随机确定结果是正数还是负数。

另一种方法完全依赖RANDBETWEEN函数,并且不使用任何乘法:

=VALUE(IF(RANDBETWEEN(0,1)=0,"-","")&RANDBETWEEN(1,9)&RANDBETWEEN(0,9))

该公式将由减号或空格后跟两位数字组成的字符串组合在一起。然后,该公式使用VALUE函数将字符串转换为数字值。公式的更短形式是:

=VALUE(IF(RANDBETWEEN(0,1)=0,"-","")&RANDBETWEEN(10,99))

另一个类似的公式如下:

=RANDBETWEEN(10,99)*IF(RANDBETWEEN(0,1),1,-1)

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(10611)适用于Office 365中的Microsoft Excel 2007、2010、2013、2016、2019和Excel。您可以在此处找到适用于Excel的较早菜单界面的本技巧的版本:

链接:/ excel-Generating_Double-Digit_Random_Numbers [生成双位数字随机数]。