在Excel2016中,需要使用随机数的情况有很多,而这个随机数的产生又是可能会有一定的条件的,我们需要按照某个特定的条件生成随机数,这里为大家介绍的就是生成的随机数不能和其他单元格数值一样的方法,随便小编也为大家介绍了一些自动生成随机数的函数。
Excel2016如何按条件生成随机数:生成的随机数不能和其他单元格数值一样的方法
这里为了方便验证,我们将随机数值尽量取小一点,如果你要大一些的随机数,可以修改程序。
设在D1单元格里取随机数(1——5之间),A1、B1单元格为有固定数值的单元格,当然数值范围也在1——5直接,否则毫无意义。
要编写VBA,首先就要打开VBA,打开VBA的方法不止一种,这里我们就使用最简单最快捷的方式,使用快捷键吧。按“Alt+F11”打开VBA窗口。VBA窗口右侧子窗口就是输入代码用的。
输入代码,如下:
Public Sub btsj()Dim sjd As Range Set sjd = Range("D1")line1: sjd.ClearContents Randomize sjd = Int(Rnd * 5 + 1) If sjd = Range("A1") Or sjd = Range("B1") ThenGoTo line1End IfEnd Sub
完成后就可以试运行并保存,运行是那个小三角,好像播放图标一样的,保存的图标不用多说。点击小三角图标后可能会弹出一个窗口,再点击运行即可。
为了快速验证,我们可以给宏加上快捷键,如图所示,这里我们给它设置快捷键“Ctrl+s”,现在我们只要按Ctrl+s就可以快速运行该宏/程序了。
注意事项
编写VBA程序的时候要细心,如果有错误提示,需要理性分析,耐心检查。
Excel2016自动生成随机数函数有哪些?
=IF(RAND()>0.8,90*RAND(),10*RAND()+90) 在一个单元格区域中随机产生0-100的数,但是小于90的数要占总数的80%以上
=RAND()
=RANDBETWEEN(a,b) excel中生成数a与数b之间的随机整数
=a+RAND()*(b-a) excel中生成数a与数b之间的随机实数
总结:以上就是全部的Excel2016中按条件生成随机数,和一些自动生成随机数函数的介绍,希望对大家有用。