VBA Excel 生成不重复随机数(排除法)

 时间:2024-09-25 09:39:13

现在和大家分享一个用VBA代码快速生成一组不重复随机数的方法。

工具/原料

Excel、vba

方法/步骤

1、本示例是从Sheet1A列100个数据中随机抽取20个数据到B列。打开工作薄,按ATL+F11组合键打开VB编辑器,点击菜单栏的“插入“,插入一个模块。

VBA Excel 生成不重复随机数(排除法)

2、双击模块1,输入下面代码到右边的窗口中。Sub不重复随机数()Dimarr()争犸禀淫'A列100个数装入数组,单元格列或行数据装入数组,数组下界默认是1arr惺绅寨瞀=Application.Transpose(Sheet1.Range("A1:A100"))m=1'数组下界n=100'数组上界Fori=1To20'循环产生20个不重复随机数k=Int(Rnd*n+m)'m到n之间随机整数,包含m、nSheet1.Cells(i,2)=arr(k)'第k个数也就是随机数赋值给工作表第二列arr(k)=arr(m)'数组中第k个数等于第m个数,把第k个数排除了m=m+1'缩小随机范围,排除第m个数,2—100,3—100,4—100……n=n-1NextiEndSub

VBA Excel 生成不重复随机数(排除法)

3、三,把光标定位在代码中,按F5或者点击运行按钮看看效果吧。也可以在工作表添加表单命令按钮指定宏进去或者添加到窗体命令按钮里使用。

VBA Excel 生成不重复随机数(排除法)

在VBA中,如何打开目录下的工作表? 如何在Excel VBA中计算数组的大小 使用VBA代码来限制Excel工作表 可用编辑范围 怎样使用VBA打开文本文件? 怎样使用VBA删除工作簿中所有空白工作表?
热门搜索
邪恶漫画之单人双打 拳击少女 大肚弥勒佛图片 线描画图片大全 下载图标