在excel中不包含一些单元格数值的随机数方法介绍

excel是办公尤其是处理数据的一个好帮手,他能给需要进行各类数据处理提供很强大的支持,这是我在工作中遇到的一个问题,是这样的,比如有两个单元格有固定值,而另外还有一个单元格需要取随机数,但又要求不要和那两个有固定值得单元格重复。如何取呢?随机函数?rand()和randbetween()都可以,但是一时间还真想不出满足要求的写法。于是我想用VBA编写也许更简单。于是就有了下文。

工具/原料

硬件:满足允许要求的电脑

软件:Office excel(我这里用的是Excel 2013版)

软件名称:
EXCEL集成工具箱 2013 V19.8 免费版
软件大小:
50.6MB
更新时间:
2013-09-05

方法/步骤

       这里为了方便验证,我们将随机数值尽量取小一点,如果你要大一些的随机数,可以修改程序。

       设在D1单元格里取随机数(1——5之间),A1、B1单元格为有固定数值的单元格,当然数值范围也在1——5直接,否则毫无意义。

在excel中不包含一些单元格数值的随机数方法介绍_第1张图片

       要编写VBA,首先就要打开VBA,打开VBA的方法不止一种,这里我们就使用最简单最快捷的方式,使用快捷键吧。按“Alt+F11”打开VBA窗口。VBA窗口右侧子窗口就是输入代码用的。

在excel中不包含一些单元格数值的随机数方法介绍_第2张图片

       输入代码,如下:

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

在excel中不包含一些单元格数值的随机数方法介绍_第3张图片

       完成后就可以试运行并保存,运行是那个小三角,好像播放图标一样的,保存的图标不用多说。点击小三角图标后可能会弹出一个窗口,再点击运行即可。

在excel中不包含一些单元格数值的随机数方法介绍_第4张图片

       为了快速验证,我们可以给宏加上快捷键,如图所示,这里我们给它设置快捷键“Ctrl+s”,现在我们只要按Ctrl+s就可以快速运行该宏/程序了。

在excel中不包含一些单元格数值的随机数方法介绍_第5张图片

在excel中不包含一些单元格数值的随机数方法介绍_第6张图片

注意事项

编写VBA程序的时候要细心,如果有错误提示,需要理性分析,耐心检查。

以上就是在excel中不包含一些单元格数值的随机数方法介绍,大家学会了吗?希望能对大家有所帮助!

你可能感兴趣的:(在excel中不包含一些单元格数值的随机数方法介绍)