chrisfang的Excel大全

【多功能抽奖器】使用说明

2011-12-24
作者: chrisfang | 分类: ExcelVBA程序 | 阅读: 20,070 次浏览 | Tags:
声明: 本站文章均属原创,转载时请标明出处

【多功能抽奖器】,是一款Excel平台下使用VBA开发的抽奖程序,非常适合年会等活动场景使用。程序的特点是提供了非常丰富的用户定制功能,其中包括奖项名称、个数、每次抽取人数的设置;抽奖界面的背景图片、背景音乐、字体样式、字体颜色、中奖名单显示位置等设置;此外还包含抽奖名单去重复、从指定名单中筛除、抽奖结果导出等辅助功能。最新版本中还加入了图片抽奖以及身份证号码和手机号码抽奖时的掩码保护功能。

这款程序最初开发于2010年初,当时更新到V1.9版,此版本仅ExcelHome论坛的下载量就达到了13000多次。期间有不少用户在使用的过程中也提出了不少改进意见,因此在2011年底的时候再次进行了版本升级,增加了新的功能。

【多功能抽奖器】使用说明

【最新版本】:V2.1

【更新历史】:

V1.3:发布于2010-1-12
名单导入功能
背景图片功能
奖项级别选取
一次性抽奖功能
中奖名单显示设置
显示字体设置
结果自动导出功能

【多功能抽奖器】使用说明

V1.4:增加自定义奖项名称功能
V1.5:修正背景图BUG
V1.6:增加自定义字体颜色功能
V1.7:增加名单去重复功能
增加指定名单剔除功能
增加每次抽取人数(屏幕随机滚动显示)的条件设置功能
修正BUG
V1.8:修正BUG
增加对2007以上版本的支持
V1.9:发布于2010-1-26
增加保存用户配置信息的功能
此版本网络下载量近20000

【多功能抽奖器】使用说明

 

V1.9特别版:特制支持长文本
V2.0:发布于2011-12-26
增加背景音乐支持
增加超长文本支持(支持掩码保护)
增加图片抽奖功能
增加对64位系统的支持

V2.1:更新于2014-01-15
修正身份证号码的显示问题

【多功能抽奖器】使用说明

最初版本至目前版本功能对比图:

【多功能抽奖器】使用说明

【使用前的设置】

此软件是ExcelVBA程序,打开Excel工作簿时需要启用宏才能正常工作。如果没有正确启用宏,您所看到的只是一张包含一列测试姓名数据的普通表格,而无法得到软件的应有功能。

有关Excel宏的启用方法可参考以下文章:《Excel启用宏的详细说明

 

【软件使用说明】

第一部分导入名单或图片:

正确启用宏的条件下打开此工作簿文件“多功能抽奖器V2.0.xls"(尽量避免与其他工作簿同时运行),会显示以下程序界面:

【多功能抽奖器】使用说明

 此界面中包含两个页面,默认页面是【文字抽奖】模式,顶部可以切换到另一个【图片抽奖】模式。

在文字抽奖页面中,点击【浏览】按钮可以从本地保存的Excel文件中导入奖池名单,要求在这个包含名单的Excel中,奖池信息必须排放在A列。如果A列包含标题行(标题行不作为抽奖内容),则需要勾选【包含标题行】复选框。

此版本中支持18个英文数字字符或9个中文字符左右的名单信息显示(具体长度要视选用字体)。如果名单中包含的不是普通人员姓名,超过了4个中文字符或8个英文字符的长度,请勾选【超长字符】以便程序自动调整版面。程序中也保留了自动判断的功能,如果您没有勾选这个选项,一定条件下程序会提醒用户并将自动勾选。

下方的剔除名单功能主要用于在现有名单基础上排除其中的部分信息,例如在某次抽奖完成后(”完成一次“,指的是用户设置的所有奖项全部抽取完毕,程序完整运行完成),要在原有名单中剔除已经中奖的人员姓名,就可以作此操作。

同样点击【浏览】按钮,选择需要剔除的人员名单,其中同样要求放置在A列。如果不需要剔除,这里可以留空。

以上设置完成后,点击【导入】按钮,程序会自动导入(包括剔除)名单,并自动清除其中重复的信息,只保留唯一一个数据记录。

如果点击【取消】按钮,程序会跳过导入过程,自动以程序中默认的测试姓名数据作为抽奖奖池信息代入。

这里提供一个小技巧,如果用户在完成名单导入后,希望在以后打开此程序时仍旧能够使用这份名单而不希望再次导入,可以在本次导入名单后,在后台打开任意一个工作簿,然后切换到本程序所在的工作簿进行保存。这样在下一回打开此程序时,名单已经保存在程序中,在【导入抽奖名单】窗口直接单击【取消】按钮就直接跳入下一步骤。

在顶部标签页选择【图片抽奖】模式,会显示如下界面:

【多功能抽奖器】使用说明

点击【浏览】按钮,选择需要作为奖池信息的图片所存放的文件夹(注意不要选择图片文件,只需选择存放目录即可)。图片的长宽尺寸没有特别要求,如果考虑美观,可以预先修改成一样的长宽比例。图片的文件大小不宜过大,否则将影响抽奖时的显示速度,建议不要超过800K。

点击【选择】按钮会将图片信息导入程序。本程序为了节省资源,在程序运行过程中将调用这些图片的存放位置,因此在程序运行期间,请务必不要更改所使用的图片的目录位置和文件名称

 

第二部分选项配置:

以上导入操作完成后,将进入下一界面:

【多功能抽奖器】使用说明

选项配置界面包括几大部分:奖项设置、名单显示位置、一次性抽奖、超长字符设置、界面辅助选项。

奖项设置

可以自定义各个奖项基本的名称、中奖数、每次抽奖数(即屏幕翻滚显示的人数,每一次暂停就抽取这个数目的奖,假定一个奖总共有21个名额,设定每次抽取5人的话,需要抽取5次可以将这个奖项全部抽出)。每次抽奖数范围在1~5之间。总中奖数人如果超过奖池人数,会有自动错误提醒。

奖项级别最多支持7级,运行程序时,会从数字较高的级别开始抽奖。每个级别抽到的人员不会进入下一级抽奖的奖池中。例如如果用户勾选了1、2、3级奖项,将从第3级(默认名称为”二等奖“,可以自定义修改)开始抽取,抽完以后开始抽取第2级(默认名称为”一等奖“),如此类推。

 

名单显示位置

可以设置抽奖界面中,已中奖名单的屏幕显示位置。设置效果如下图所示:

【多功能抽奖器】使用说明

一次性抽奖

如果不需要中间过程,不需要在屏幕上实时显示中奖人员,希望一次性将所有奖项全部抽取完毕导出中奖名单,可以勾选此种特殊抽奖方式。此方式在抽奖中只进行一次抽奖动作即可立即生成完整的获奖名单。

 

超长字符设置

本程序将大于8个英文数字字符或4个中文字符的文本长度定义为”超长字符“,如果在上一个程序界面中勾选了【超长字符】选项,在这个界面中这部分选项会由灰色变亮进入可选状态。

如果你的奖池信息是身份证号码或手机号码,可以选择对应的选项,如果都不是则可以选择”其他“由程序自动判断适用类型。所不同的地方就在于程序会根据文本长度调整字体大小和版面布局。

如果选择身份证或手机号两种类型,程序还提供了【使用掩码】的功能以供选择。使用掩码的意思就是可以将部分数字信息以星号替代,保护个人隐私。比如13012345678的手机号码,在使用掩码后,会在屏幕上显示130*****5678。在最终导出的中奖结果名单中,会显示完整的号码信息。

 

界面辅助选项

【背景图片】可选择抽奖屏幕中的背景图。

【背景音乐】可以选择抽奖时自动播放的音乐,调用WindowsMediaPlayer进行播放,请确认您的系统中安装有WindowsMediaPlayer。支持MP3、WAV、MID、WMA等主流音乐格式,支持同时选取多首音乐。勾选【循环播放】可以支持循环播放。

【选择字体】可选择抽奖屏幕界面中所显示的文字字体,以及标题部分和名单部分所使用的字体颜色(单击色块可以在调色板中选择不同颜色)。

以上设置完成后,点击【确定】按钮即将进入抽奖界面,在此之前,程序会询问是否保留上述配置。如果允许保留,本程序将在此计算机系统中保留以上配置信息,在下一次运行此程序时自动导入,不需要用户重新设置。(如果选择多首音乐作为背景音乐,需要手动重新选取一下各个文件,否则将以之前选取的第一首音乐作为背景)

 

第三部分抽奖界面

配置完成后进入以下抽奖界面:

【多功能抽奖器】使用说明

抽奖界面下方的状态栏会显示操作提示。按任意键可以开始启动人员名单的随机滚动,再次按下任意键可以进行一次抽取,获奖人员姓名实时显示在屏幕上以及状态栏中,屏幕的显示最多支持20人名单(身份证号码等超长字符时只显示10人名单),超过20的情况下每20人翻屏显示。接下来再按任意键则继续抽奖的进行。

标题区和状态栏中会显示当前所抽取的奖项名称。抽奖界面的显示窗口可以最大化或窗口化显示,最大化显示时字体会相应放大显示。

各奖项抽取完全结束后,在程序所在路径下自动生成名为【抽奖结果】的Excel文件,用户可在此文件中查看具体抽奖结果。

 

【下载地址】

本地下载:多功能抽奖器 (3739)
百度云:http://pan.baidu.com/s/1pJLMjUV

 

【其他说明】

 

【Q&A】

3条评论

  1. 田硕说道:

    有用 实用 好用 不错

  2. 颦笑芙蕖说道:

    如何剔除一部分人

    • chrisfang说道:

      将需要剔除的人员名单放置在某个excel文档的第一个工作表的A列当中,然后使用这里的剔除功能指向这个文件就行了。

田硕进行回复 取消回复

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>