首页 > 办公 > Excel > 正文

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

2024-08-23 19:40:41
字体:
来源:转载
供稿:网友

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

工具/原料

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

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

方法/步骤

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

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

excel如何取不包含某些单元格数值的随机数

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

excel如何取不包含某些单元格数值的随机数

       输入代码,如下:

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如何取不包含某些单元格数值的随机数

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

excel如何取不包含某些单元格数值的随机数

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

excel如何取不包含某些单元格数值的随机数

excel如何取不包含某些单元格数值的随机数

注意事项

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表