这几天朋友圈都在晒年会,看到各位抽到的大奖,异常羡慕。 反正我从来都中不到,闲极无聊,索性用 VBA 做个九宫格抽奖器自己抽着玩。 喜欢的话文末点个“好看”,谢谢支持! 运行效果: 按“开始”开始随机抽奖,按“停止”结束抽奖。 制作方法: 1. 在 Excel 中选取九宫格区域,填写奖品 2. 按 Alt+F11 打开 VBE,代码及释义如下: Dim lucky As Integer '将lucky定义为模块级别变量 Sub 开始抽奖 Dim i As Integer, j As Integer'i 和 j分别为行和列的值 Randomize '初始化随机数生成器 start: lucky = 0 ' 初始化 lucky 的值为 0 Range('B2:D4').Interior.ColorIndex = 15 ' 初始底色为浅灰 i = (4 - 2) * Rnd + 2' 生成 2 到 4 之间的随机数值 j = (4 - 2) * Rnd + 2 ' 因为本例的行列值都在2到4之间 Cells(i, j).Interior.ColorIndex = 6 ' 抽中的底色为黄色 DoEvents'将控制权传给操作系统,即在程序执行中,略作停顿, DoEvents '让系统处理完一定的事件后,再继续程序 DoEvents If lucky = 1 Then Exit Sub' 当 lucky 为1,则退出 GoTo start End Sub Sub 停止抽奖 lucky = 1 ' 将 lucky 赋值为1 End Sub 3. 现在回到表格界面,点击“开发工具”-->'插入'-->'按钮' 分别制作两个按钮 4. 将按钮的文本分别改为“开始”和“结束” 5. 右键单击按钮,分别给两个按钮指定我们已经编辑好的宏,就完成了: “开始”按钮对应“开始抽奖”宏 “停止”按钮对应“停止抽奖”宏 请注意: 如果宏无法运行,可以点击“开始”-->'Excel 选项'-->“信任中心”-->“信任中心设置”-->“宏设置”-->“启用所有宏” |
|