网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

Excel制作年会抽奖程序,VBA源码,就是这么简单

GG网络技术分享 2025-03-18 16:08 2


公司年会中,如果有一个抽奖环节,那就是需要有一个随机过程来进行抽奖活动。

本节将介绍一个小方法,通过一个VBA代码来实现整个抽取过程。

实现方法

既然是抽奖,那么就涉及到一个随机过程,也就是说不一定抽到谁,但要有一个抽取名单,也就是一个随机池。

我们把这个随机池设定为一个工作表单元格内容,或者是一个数组,本节示例中以数组来进行随机抽取。

过程界面如下图所示:

三个按钮,一个开始、一个停止和一个重置复位。

每个按钮有不同的过程。

随机过程中会对已经抽取出来的名字进行一个筛选处理,也就是说下次抽取就不会再把已经抽取的人再次抽取出来。

实现方法是将已经抽取的人放置到一个数组里,下次抽取通过遍历这个数组就可以确定是否已经抽取出来,如果存在就不进行抽取。

代码

全局变量定义

OptionExplicitDimxArr()"定名义单数组DimisID As IntegerDimisIDarr(), iid As Integer"定义筛选名单数组DimisTrue As Boolean"定义退出循环变量

开始按钮代码

PrivateSub 开始抽取()OnError Resume NextMe.CommandButton1.Enabled=FalseisTrue=FalseDimxCaption As StringDimxR As Range, r As Range, ir As Longir=ThisWorkbook.Worksheets(2).Range("A65535").End(xlUp).RowIfir <= 1 Or ir > 65535 Then Exit SubSetxR = ThisWorkbook.Worksheets(2).Range("A2:A" 

标签:

提交需求或反馈

Demand feedback