02.26 excel怎么制作抽奖小程序?

Luo240186376


Excel抽奖小程序是一种简单而有意思的应用,抽奖小程序的制作需要掌握以下知识:

  1. RAND函数:生成随机数

  2. RANK函数:排名次

  3. INDEX函数:引用相应单元格内容

  4. F9键的作用:强制执行重算

如果只抽取一个人,只需按下F9键,抽取效果如下图所示:

如果一次抽取多人,按下F9键则如下图所示:

制作过程如下:

首先,准备好参与抽奖的人员名单,为了简单起见这里选择20人作为样本。

然后,新建两个辅助列,在“辅助1”列对应的B2单元格输入公式“=RAND()”,并双击向下填充,生成一系列随机数。随之在“辅助2”列对应的C2单元格输入公式“=RANK(B2:B$2:B$21)”,并双击向下填充,得到每一个随机数对应的前后名次。

然后,最重要的一步,在E2单元格用INDEX函数引用A列姓名,具体公式如下:

=INDEX($A$2:$A$21,C2)

效果如下图所示:

然后按F9键即可随机抽取一人,如下图所示。

如果想要一次抽取多人,可以拖动E2单元格向下复制到需要的位置,比如再向下拖动两个单元格的位置,到E4单元格,如下图所示。

然后按F9键即可随机抽取不重复的3人,如下图所示。

拓展:如果只是抽取一个人的话,还有更加简单高效的方法,如下图所示,在C2单元格输入如下公式即可

=INDEX($A$2:$A$21,RANDBETWEEN(1,20))

这里的RANDBETWEEN函数与RAND函数类似,可以生成指定范围内的随机数。


师说新语


EXCEL可以抽奖,通过Randbetween、rand等函数来获取随机结果,也是可以的,但不直观,不明白的也不知道这个结果怎么来的,公不公平。

现在给大家分享一个PPT+EXCEL来实现的抽奖程序。

到年底了,很多公司都在准备年会,但年会抽奖是少不了的,为了使抽奖程序更直观,通过VBA在PPT中调用后台EXCEL中的抽奖人员名实现随机滚动的效果,在滚动过程中按回车实现抽奖结果随机定位,中奖的人员将不再进行后续的抽奖,并将抽奖结果写入EXCEL的中奖人员中。

功能如下:

  • 座位号循环随机滚动

  • 按回车键抽奖一次抽出一名员工,并将中奖的员工信息写入EXCEL中奖人员表中,同时此员工不再参加后续抽奖

  • 可以简单修改后设定一等奖、二等奖、三等奖等奖项

  • 抽奖结果在EXCEL抽奖人员中随机抽取,绝对公平,程序代码不控制抽奖结果,抽奖结果取决于抽奖时按回车时随时循环滚动的名单确定。

抽奖主界面,可以添加图片及动画效果

抽奖界面,可以添加图片及动画效果

抽奖后记录中奖人员名单

抽奖时,通过座位号随机滚动抽奖人员

部分VBA代码


用户52170484998


大家好,我是头条号:Excel自学成才

抽奖小程序,要求的是结果随机,在Excel里面有随机数函数rand()和randbtween来进行制作的,我们分三种情况来制作,1、单人抽奖,2、多人不重复抽奖,3、内定抽奖

我们首先准备抽奖的名单,放在A列,这个表格里面有88个人员

1、单人抽奖模式

我们在某个空白的单元格中输入公式

=index(a:a,randbetween(1,88))

这个时候,我们按住F9键,屏幕就会滚动起来,松开F9键,就得到了抽奖的结果(如果是笔记本电脑,按FN+F9键),抽奖效果如下所示:

2、多人不重复抽奖

我们需要在第2列中输入公式=rand()函数,然后向下填充,它会随机的生成0-1之间的随机数

然后我们在中奖名单里面输入公式:=index(a:a,rank(b1,b:b)),希望几个人中奖的话,就向下拉动几个单元格,便可以得到不重复的多人中奖抽奖模式

3、内定抽奖

如果希望抽奖的时候,内定抽到自己的话,那么我们可以借助VBA来实现制作过程如下,首先我们按ATL+F11,打开VBA编辑器,在里面输入如下三个模块的代码

因为在代码中,我们是对D1单元格产生随机数,所以在表格中,输入的公式是:=index(a:a,d1)

然后我们插入三个按纽,其中内定的按纽放的隐蔽一点,分别绑定开始,结果,内定代码

这个时候就制作完成了,当我们正常点击开始,结束抽奖时,是正常的

当我们提前点了一下内定按纽之后,再点开始,结束时,抽奖的结果100%是作者本身了

因为插入了VBA代码,所以表格需要另存为一下,将格式更改成xlsm格式的文件。

这就是3个Excel用来制作抽奖的小程序技巧

头条号:Excel自学成才,主页有更多精彩内容~


Excel自学成才


用EXCEL制作抽奖小程序,用RAND函数即可实现,可实现以下功能:

1、不重复中奖。

2、自动记录中奖者。

操作流程如下:

1、准备数据

排序公式=COUNTIFS($B$2:$B$25,">="&B24)

序号公式=IF(D25="√\

excel图表


如何利用Excel制作出抽奖小游戏呢?接下来给大家介绍两种方法。

方法一:使用VLOOKUP和RANDBETWEEN函数

首先介绍下这两个函数:

1.VLOOKUP是一个查找和引用函数,通过搜索表区域首列满足条件元素,在表格或区域中查找某个值。 VLOOKUP 函数语法是=VLOOKUP(要查找的值、要在其中查找值的区域、区域中包含返回值的列号、精确匹配或近似匹配 – 指定为 0/FALSE or 1/TRUE)。2.RANDBETWEEN是一个随机函数,返回位于两个指定数之间的一个随机整数,RANDBETWEEN函数语法是RANDBETWEEN (下限值,上限值)

我们打开参与抽奖的人员信息表,并作出中奖样式



其次在中奖人员名单下方输入=VLOOKUP(RANDBETWEEN(1,18),$A$2:$B$59,2,FALSE)

函数解析:

  1. RANDBETWEEN(1,18)表示随机生成1到18中的一个整数。
  2. VLOOKUP(RANDBETWEEN(1,18),$A$2:$B$59,2,FALSE)表示RANDBETWEEN(1,18)随机生成的数字中,在$A$2:$B$59区域内精确查找与之对应的值,2表示查找的值,在数据区域的第二列。

其次根据需求调整单元格中奖人员文字样式



最后按【F9】键不放,就可实现抽奖功能了。

完整动图演示:



方法二:使用index和RANDBETWEEN函数

Index函数介绍:

Index函数用于返回行与列交叉处的单元格引用或单元格的数值;返回的单元格引用可以是一个单元格,也可以是一行或一列。语法:INDEX(对单元格的引用, 第几行 [第几列], [第几个区域])。

首先我们在中奖人员名单下方输入=INDEX(C2:C19,RANDBETWEEN(2,19))

函数解析:

  1. RANDBETWEEN(2,19)表示,随机生成2到19中的一个整数。
  2. =INDEX(C2:C19,RANDBETWEEN(2,19))表示随机生成的整数中,在C2:C19区域中查找该行的数值。

最后按【F9】键不放,就可实现抽奖功能了。

完整演示:



如果我们想实现在抽奖过程中,抽奖名单单元格样式跟着变化,那么,我们可以选中抽奖人员区域,点击【开始】——【样式】组中——【条件格式】——【突出显示单元格规则】——【等于】,在打开的对话框中,点击输入框右侧【图标】按钮,选中中奖人员单元格,在右侧选中指定颜色即可实现。

以上就是Excel中制作抽奖小游戏的方法,您要觉得不错的话,记得点赞支持下哦,欢迎大家留言交流。

点击上方"关注",每天学习office知识技巧。


守住l坚持


用Excel制作抽奖小程序,可以利用函数INDEX函数在结合其它函数用公式法实现。

具体制作方法如下:

例一:假设现在我们要抽一等奖1名

步骤1、把需要参与抽奖的人员姓名整理记录在Excel表格中同一列,并设置抽奖结果要放置的单元格位置及格式。表格整理设置后如下:

步骤2、在E6单元格里输入以下公式: =INDEX(A$2:A$13,RANDBETWEEN(1,12));

步骤3、选中A列名字区域,然后点击菜单栏目的【条件格式】—【突出显示单元格规则】—【等于】,

在弹出的【等于】对话框中,设置:=E6单元格,填充颜色可以设置为:浅红填充色深红色文本,如下图:

步骤4、最后按住F9键不停,就可以看到E6单元格的名字开始滚动起来,停下按F9键时,一等奖的幸运儿就产生啦。

公式解析:

公式=INDEX(A$2:A$13,RANDBETWEEN(1,12))有用到两个函数,INDEX函数和RANDBETWEEN函数。

RANDBETWEEN函数:

含义:返回一个介于指定的数字之间的随机数;

语法格式:=RANDBETWEEN(bottom,top);

参数意义:

Bottom参数: 将返回的最小整数。

Top参数: 将返回的最大整数。

所以RANDBETWEEN(1,12)表示随机抽取产生1 ~ 12之间的任意数。

INDEX函数:

含义:返回表或区域中的值或对值的引用;

语法格式:=index(array,row_num,column_num);

参数意义:

Array参数:表示单元格区域或数组常数;

row_num参数:表示要引用的行数;

column_num参数:表示要引用的列数;

(注意:如果省略row_num,则必须有column_num;如果省略column_num,则必须有row_num);

INDEX函数最终结果就是引用出区域内行列交叉处的内容。

比如:公式:=index(A$2:A$13,6),意思就是返回A列第6个姓名。

所以,上述抽奖程序中的公式:=INDEX(A$2:A$13,RANDBETWEEN(1,12)),就是先用RANDBETWEEN函数产生1 ~12之间的随机数,在用index函数引用出A2:A13区域中,由RANDBETWEEN函数产生的随机数所在的单元格姓名。

例二、假如中奖者有多名,比如:一等奖有2名。

上述INDEX函数+RANDBETWEEN函数的公式法,适合在中奖者只设置1名的情况,当中奖者设有多名时,上述的公式在抽取多名中奖人员时,会抽到重复的人员。为了避免抽到重复人员,我们可以用以下方法:

步骤1、插入辅助列B列,在B2单元格输入以下公式:= RAND(),公式向下填充;

步骤2、在E2单元格里输入以下公式:=INDEX(A$2:A$13,RANK(B2,B$2:B$13)),公式在向下填充;

步骤3、选中A列名字区域,然后点击菜单栏目的【条件格式】—【突出显示单元格规则】—【新建规则】,如下图所示:

在弹出的【新建规则】对话框中,选择“使用公式确定要格式化的单元格”,输入公式:

=NOT(ISNA(VLOOKUP(A2,$E$6:$E$7,1,0))),然后点击【格式】,设置填充颜色,即可,如下图:

步骤4、最后按住F9键不停,就可以看到E6单元格的名字开始滚动起来,停下按F9键时,一等奖的幸运儿就产生啦。

公式解析:

RAND函数

含义:返回0~1之间的小数,包含0,但不包含1;

语法格式:=RAND(),它是无参数;

RANK函数

含义:排名函数,常用来是求某一个数值在某一区域内的排名;

语法格式:= rank(number,ref,[order])

参数意义:

number 参数:为需要求排名的那个数值或者单元格名称(单元格内必须为数字);

ref 参数:为排名的参照数值区域;

order参数:为0和1,默认不用输入,得到的就是从大到小的排名,若是想求倒数第几,order的值请使用1。

所以,上述公式:=INDEX(A$2:A$13,RANK(B2,B$2:B$13))中,

RANK(B2,B$2:B$13),是对B2:B13单元格产生的随机数字排序,生成了随机的1-12的数字。RANK函数产生的排序结果将用于INDEX函数的参数。

INDEX函数返回表格(B2:B13)中的元素值,此元素由行号的索引值(也就是RANK函数的运算结果)给定。

因为B列的数字是完全随机的,所以任何数字出现在前2行的概率都相同。

当然,最后你可以把表格美化一下,让整个抽奖器看过去更美观一点。


Office学习


分享一个很好用的抽奖工具以及制作方法!(文末有免费获取方法)

用excel制作抽奖小程序,有几个问题,如果需要很多人一起用时不方便,而且用户的权限也不能控制,别人改了设置也不知道,这样就会导致一些错误的出现。

而今天给大家带来一个好用的工具, 云表,这是原金山WPS一支创业团队开发的,设计界面和EXCEL很像,也兼容excel\\WPS,所以会excel的用户按说都是会用云表的。

用云表设计抽奖程序很简单,你可以像画表格一样设计软件界面,比如哪里有个图案, 哪里有按钮,哪里可以填写文字……。等,你完全可以按照自己的意愿来设计。通过全中文的公司来设置抽奖的规则,也可以设置每个人只能抽奖一次,也可以设置奖品,奖品,奖金数额,总之你想要的功能,都能轻松实现。而且可以设置公司的所有人一些使用,只有系统管理员才可以设置,其他人只有抽奖的权限和查看结果的权限,没有修改的权限,所以就很方便。

电脑上使用,手机上也可以使用,可以一键生成手机APP

适合企业团建活动时使用。很省心也方便。

如果每次活动抽奖形式和规则会有变化,你可以随时更改程序就是了,方便简单。

除了做抽奖程序,还可以做各用管理软件!

不用编程,做OA、进销存、人事管理、行政管理、 考勤管理、生产管理。……总之比传统的管理软件都要好用,而且普通人都可以使用,不用会编程的。一行代码都不用写

免费获取

1、麻烦您关注、转发、评论一下,谢谢了,

2、你通过今日头和手机APP发送私信:123或者云表 ,即可收到自动回复的软件下载地址。


乐图软件


很多公司每年年终都会搞抽奖活动,随机从员工名单中抽取若干名员工发放年终幸运大奖。如何利用EXCEL制作抽奖小程序抽奖呢?介绍2种EXCEL制作的抽奖小程序,看是不是有您需要的。

第一种:运用公式制作的简单抽奖小程序。如果要求不高,抽的人数也不是很多,可以通过EXCEL公式来制作一个简单的抽奖器。比如我们要从96名员工中抽出3名幸运员工,主要有3个步骤:

1、B2单元格内输入公式=RAND(),并填充到B97单元格

2、设计好中奖人员名单显示区域格式,然后在H9单元格录入公式:

=INDEX($A$2:$A$97,RANK(B2,$B$2:$B$97))

3、通过键盘F9开奖,比如按住您可以按住F9键不放,此时随机数及中奖人会不断变化,倒数几秒,放开F9键随机生成三个中奖人姓名。

第二种:运用VBA制作的多功能抽奖小程序。如果要求高,比如要求自定义设置奖项名称、个数、每次抽取人数;抽奖界面的背景图片、背景音乐、字体样式、字体颜色、中奖名单显示位置等设置;此外还包含抽奖名单去重复、从指定名单中筛除、抽奖结果导出等辅助功能,或者是以身份证号、手机号及照片抽奖等功能。建议用VBA代码写的比较专业的抽奖程序。我原来为朋友公司做年会PPT时,在网上下载过一个VBA代码写的抽奖程序《缙哥哥Excel多功能抽奖器》感觉非常好用。有需要这个抽奖器程序的可以关注今日头条“EXCEL学习微课堂”,点赞、评论转发后私信联系我。

\n

{!-- PGC_VIDEO:{"thumb_height": 360, "file_sign": "a0ff621270eb1695e41134b2624be886\

EXCEL学习微课堂


1.INDEX+RANDBETWEEN函数

如下图,在D2单元格输入公式:=INDEX($A$2:$A$11,RANDBETWEEN(1,10)) 按F9刷新可实现抽奖效果。RANDBETWEEN(1,10)表示姓名的个数,从1-10个姓名之间随机抽取。



2.OFFSET+RANDBETWEEN函数

如下图,在D2单元格输入公式:=OFFSET($A$1,RANDBETWEEN(1,10),,) 按F9刷新可实现抽奖效果。


3.同时抽取多个不重复中奖者

首先在B2单元格输入:RAND()生成随机小数


然后在E2单元格输入公式:=INDEX($A$2:$A$11,MATCH(LARGE($B$2:$B$11,ROW(A1)),$B$2:$B$11,0)) 使用LARGE函数提取第1、第2、第3最大值,使中奖姓名不会出现重复。


excel函数教程


岁末年初,很多公司都会举办年度酒会。在年度酒会上一般都会进行抽奖。如果用传统的纸条抽奖,既繁琐又招人怀疑是否有内幕。很多人会选择编程来进行抽奖,其实我们可以用excel函数公式来制作抽奖小程序。今天就让我们一起来学习如何制作Excel 抽奖小程序。

大观园内举办一场年度酒会,准备从三十六钗中抽取5个幸运者。每个人不能重复上榜,重复中奖。

1、先在B列插入随机数1-36,B2=RANDBETWEEN(1,36),双击下拉填充到底。

公式解读:

RANDBETWEEN函数:返回大于等于指定的最小值,小于等于指定最大值之间的一个随机整数。其函数语法为:RANDBETWEEN(bottom,top)Bottom参数: RANDBETWEEN将返回的最小整数。Top参数: RANDBETWEEN将返回的最大整数。RANDBETWEEN(1,36)是产生随机整数1至36。

2、在D1中输入幸运名单,在D2输入公式:=INDEX($A$2:$A$37,RANK(B2,$B$2:$B$37)),往下拖动五行,就能产生五个幸运者。

公式解读:

Rank函数最常用的是求某一个数值在某一区域内的排名。rank函数语法形式:rank(number,ref,[order])函数名后面的参数中 number 为需要求排名的那个数值或者单元格名称(单元格内必须为数字),ref 为排名的参照数值区域,order的为0和1,默认不用输入,得到的就是从大到小的排名,若是想求倒数第几,order的值请使用1。RANK(B2,$B$2:$B$37)意思是B2在B2至B37中排名第几,B2至B37必须采用绝对引用,否则公式下拉之后会导致排名区域发生变动,导致出错。

Index函数语法:INDEX(reference,row_num,column_num,area_num)Reference是对一个或多个单元格区域的引用。· 如果要对引用输入一个非连续区域,请使用括号将该引用括起来。· 如果引用中的每个区域都只包含一行或一列,则可以不使用相应的 row_num 或 column_num 参数。例如,对于单行引用,可以使用 INDEX(reference,,column_num)。Row_num是要从中返回引用的引用中的行编号。Column_num是要从中返回引用的引用中的列编号。当然index函数还有数组形式,在本公式中是采用引用形式,因此只谈它的引用形式。INDEX($A$2:$A$37,RANK(B2,$B$2:$B$37))意思是先求出B2在B2至B37中的位置,再算出相对应的A2至A37的单元格,最终产生出幸运者。

因为是采用随机函数来产生,所以最终产生的幸运者都是随机的。

如果要更新幸运者,只要按F5就能进行更新,产生新的幸运者名单。

Gif动图如下:


分享到:


相關文章: