如何在VBA中生成随机正数和负数

时间:2014-07-19 11:11:07

标签: vba

我正在尝试使用VBA生成范围(-5,5)上的随机整数,例如100 +/- rnd 5.我想知道你们中有些人是否有更优雅的方法来做到这一点。到目前为止,我只有" +"

randomRange= 100 + CInt(Rnd * 5)

3 个答案:

答案 0 :(得分:3)

您可以使用Excel的RANDBETWEEN功能,如下所示:

randomRange= 100 + Application.WorksheetFunction.RandBetween(-5, 5)

答案 1 :(得分:0)

我找到了解决方案。

randomRange=100 + cint((Rnd()*((-1)^INT(rnd()*10))) * 5)

哪里

  • (Rnd()*(( - 1)^ INT(rnd()* 10)))* 5 是生成介于-1和1之间的数字的部分。
  • * 5给出-5到5之间的数字。

感谢DRJ on Mr. Excel Forum

答案 2 :(得分:0)

试试这个

randomRange = 100 + CInt(5 * (2 * Math.Rnd - 1))