每逢年末,公司总要举办各种晚会、总结会,有一个环节也总是必不可少:幸运抽奖。在网上也可以下载很多抽奖软件,但不一定适合自已公司使用。所以兰色就用Excel做了一个超简单、实用的抽奖工具,希望对同学们有用。
先看抽奖效果:
是不是很想用?使用方法很简单,简单几步就可以直接使用:
1、准备工作
抽奖工具下载后,打开时如果遇到安全提示,点击启用内容
把人员名单输入到“名单”工作表A列中
下载地址(百度网盘):复制到电脑浏览器地址栏中打开
https://pan.baidu.com/s/12wmpzN23eeGnSkaKi8LG9w
然后在抽奖工表中点一下“开始抽奖”按钮,准备工作完成。
2、抽奖
把光标放到需要抽奖的位置,比如特等奖,就选取D3单元格,然后按F9开始抽奖,需要停时松开F9键,幸运人员生成,点保存按钮中奖人名会输入到选取的单元格D3中,如果继续抽特等奖,就选D4....其他奖项同理
注意:为了防止重复中奖,在中奖后该人员会从“名单”工作表中删除,在测试时注意备份名单,以防正式抽奖时该人员不在A列。
制作这个抽奖工具,过程很简单,难的是制作思路,兰色想了很多天完成它。下面兰色就简单介绍一下制作过程:
1、两个公式
在抽奖表中设置了两个公式
A1单元格公式(作用是生成随机整数)
=RANDBETWEEN(1,COUNTA(名单!A:A))
A2单地格公式(作用是根据A1生成的随机数从名单表中用INDEX函数提取姓名)
=INDEX(名单!A:A,抽奖!A1)
2、在Excel表中插入一个背景图片
3、插入一个文本框,然后在编辑栏中输入公式= A2按回车结束,去掉背景色和边框颜色。
调大字体后放在背景图片上,就是显示的中奖人员
4、开始和保存按钮分别执行两段VBA代码。工作表标签右键 - 查看代码 - 单击模块,在右侧可以看到它们。
Sub 保存()
R = [a1]
ActiveCell = [a2]
Sheets("名单").Cells(R, 1).EntireRow.Delete
Application.EnableEvents = False
[a2] = ""
Application.EnableEvents = True
End Sub
Sub 开始()
Application.EnableEvents = False
[a2] = ""
Application.EnableEvents = True
End Sub
5、按钮是插入的矩形,右键执行宏,就可以关联代码
6、在VBA编辑器中双击抽奖工作表名称,在右侧可以看到事件代码。
Private Sub Worksheet_Calculate()
If [a2] = "" Then [a2] = "=INDEX(名单!A:A,抽奖!A1)"
End Sub
兰色说:对于不懂VBA的同学来说,后面制作过程可以略过,直接下载使用就可以了。有一点需要说明,这个无法内定,所以抽奖过程也是绝对公平的。
如果你是新同学,长按下面二维码 - 识别图中二维码 - 关注,就可以每天和兰色一起学Excel了。