求Excel抽奖程序,有一个30人的名单,每点击一下按钮就不重复抽取并显示一个姓名,直至30人全部抽完。
发布网友
发布时间:2022-04-23 16:44
我来回答
共3个回答
热心网友
时间:2023-10-09 16:09
你需要再加一个初始化按钮,代码如下(commandbutton1就是你的next,commandbutton2是初始化按钮)
Dim arr(), count
Private Sub CommandButton1_Click()
If count <= 29 Then
n = Int(Rnd * (UBound(arr) - LBound(arr) + 1)) + LBound(arr)
TextBox1.Text = arr(n)
Cells(count + 1, 10) = arr(n) '测试代码可删除
Cells(count + 1, 11) = n '测试代码可删除
count = count + 1
arr(n) = arr(UBound(arr))
If UBound(arr) > 1 Then ReDim Preserve arr(1 To UBound(arr) - 1)
Else
MsgBox "所有人员都已抽完"
End If
End Sub
Private Sub CommandButton2_Click()
ReDim arr(1 To 30)
Randomize
TextBox1.Text = ""
For i = 1 To 30
arr(i) = Cells(i, 1)
Next
MsgBox "已初始化"
count = 0
End Sub追问谢谢老师。但是在调用初始化函数的时候出现了“ 运行时错误424 要求对象”这样的报错,请问这是怎么回事?
追答哪一行报的错,如果是textbox1那一行,那是我自己加的文本框,你按你自己的需要改,我不知道你图姓名那里是什么,如果那里只是一个合并的单元格,那你可以将TextBox1.Text = ""改为Range("K11")=""
同样上面的TextBox1.Text = arr(n)也要改为Range("K11")=arr(n)
热心网友
时间:2023-10-09 16:10
用随机数来实现
需要编写vba代码
随机数代码请参考:
sjs = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
注:sjs就是需要得到的随机数变量
upperbound = 数值上限
lowerbound = 数值下限
热心网友
时间:2023-10-09 16:10
人人都有奖就不用抽了
求Excel抽奖程序,有一个30人的名单,每点击一下按钮就不重复抽取并显示一...
你需要再加一个初始化按钮,代码如下(commandbutton1就是你的next,commandbutton2是初始化按钮)Dim arr(), count Private Sub CommandButton1_Click()If count <= 29 Then n = Int(Rnd * (UBound(arr) - LBound(arr) + 1)) + LBound(arr)TextBox1.Text = arr(n)Cells(count + 1, 1...
EXCEL抽奖如何多次抽奖不重复excel抽奖怎么不重复
Private Sub CommandButton4_Click()'开始抽奖 Dim zb As String, dj As String, rs As Integer Dim SARR(1 To 5000, 1 To 2) '存放本次抽奖的候选人清单 1-姓名 2-电话号码 'Dim lsARR '存放最近100次的候选人 Dim ZZ1 As Integer, ZZ2 As Integer, ZZ3 As Integer 'Dim jgarr Di...
Excel抽奖小系统简单修改一下可直接套用
点击【开发工具】—【插入】,选择第一个【按钮】控件,插入,暂时先不指定宏,点击【取消】,将控件名字修改为【开始】,同理插入【停止】、【清除】控件,如下图所示:人员名单准备插页1【Sheet1】为抽奖系统界面,插页2【人员名单列表】为员工名单存放列;输入代码一共输入三段代码:第一段:第二段...
怎么借助excel设计制作一个抽奖或抽签小程序怎么借助excel设计制作一个...
1、打开电脑后,直接进入到excel软件中,新建一个空白的表格文档,在表格中某一列单元格中录入好我们要抽取的内容,例如姓名,编号等等。2、录入完成后,我们在当前表格文档中重新再去选择一个单元格,将其作为最终抽取结果的展示用。3、接着我们在该抽奖结果单元格中输入以下公式:“=INDEX(A:A,RAND...
WPSexcel动态抽奖小程序制作实例教程
首先,我们要把上节所学的小公式先编辑一遍,制作出一个幸运号码摇奖程序。然后,在中奖名单单元格中输入公式。公式为: =VLOOKUP(I10,C5:D18,2,FALSE)其中,I10是号码摇奖程序的单元格位置(即图中特等奖的幸运号码摇奖区单元格坐标);C5:D18表示着抽奖名单中的“幸运号”与“姓名”两列...
Excel如何随机抽取人名?只需一个函数即可完成,你绝对不知道!
首先需要在抽奖结果显示处输入函数:【=INDEX(A:A,RANDBETWEEN(2,15))】2、 设置选中人名颜色 将Excel中奖所有的人名全部选中,然后鼠标点击菜单栏"开始"里面的【条件格式】,在突出显示单元格规则中选中【等于】,在坐标栏中设置【显示结果人名单元格坐标】即可!设置完毕后我们只需要按住快捷键...
WPSexcel制作号码抽奖小程序
首先,我们要准备一张带有幸运号码的抽奖名单。接着,在抽奖区输入公式。公式为: =RANDBETWEEN(C5,C18)其中C5为幸运号首行单元格坐标,C18是末尾单元格坐标,两个坐标之间用英文输入法的逗号隔开,表示在C5~C18之间随机抽取一个幸运号码。公式编辑完成,按下回车键即可。以上公式其实比较适用于单个...
excel怎么做抽奖转盘ex抽奖转盘怎么制作
以下是创建Excel抽奖转盘的步骤:1. 打开Excel并创建一个新工作簿。2. 在第一个单元格中输入转盘上的奖项名称,然后在每个相邻单元格中输入一个奖项。3. 选中所有单元格并调整宽度和高度,使单元格成为正方形。4. 选中所有单元格并将它们转化为表格。5. 选中表格并点击“插入”选项卡,然后点击“图表...
怎样用excel制作抽奖姓名
1 开奖规则如果规定按住F9键不放保持10秒后摇奖 您可以按住F9键不放,此时随机数及中奖人会不断变化,倒数10秒,放开F9键随机生成三个中奖人姓名 2 开奖规则如果规定按F9键10次,取第10次产生的随机中奖人 您可以数数按F9键10次,以第10次随机生成三个中奖人姓名 END 注意事项 各版本EXCEL设置方法...
【EXCEL VBA】抽奖工具: 从N个姓名中随机抽出M个人(M<=N)
稍等,我给我写一个 sheet1表A列为姓名列(不限定人数),sheet2表的B2输入需要抽取的人数,如果大于名单人数,会提示超出并停止运行,否则在D列列出抽中名单(不重复,数组与字典相结合的方法完成)