主页 > 办公自动化 > excel随机选取(excel随机选取数据不重复)

excel随机选取(excel随机选取数据不重复)

2022-11-27 17:49来源:m.sf1369.com作者:宇宇

1. excel随机选取数据不重复

1.首先选中Excel表格,双击打开。

2.然后在该界面中,选中要显示随机数的单元格。

3.再者在该界面中,公示框中输入随机数公式“=RAND()”。

4.其次在该界面中,选中单元格右下角,向下拖动。

5、继续在该界面中,选中要用的随机数单元格,右键点击“复制”选项。

6、然后在该界面中,选中第二列,右键点击“粘贴”选项。

2. excel抽取随机数不重复

1、首先在excel表格中输入随机函数公式:=rand()。

2、点击回车并下拉公式即可得到一组随机函数,先将该组随机函数复制粘贴为数值,将其固定显示在单元格中。

3、然后再其右侧的空白单元格中输入公式:=RANK($B$3:$B$12,$B$3:$B$12)。

4、点击回车并下拉公式即可得到一组不重复的随机整数。

3. excel 随机不重复

1、在Excel左上角的名称框中输入A1:A1000,按Enter,将A1:A1000单元格处于选定状态;

2、输入=RAND()按Ctrl+Enter组合键结束;

3、选择B1:B1000,输入=TEXT(RANK(A1,A:A)-1,"000")按Ctrl+Enter组合键结束,即可生成不重复的000-999的随机号码,且每按一下F9键,就会自动随机一次。

4. excel如何实现随机抽取且不重复

操作方法

01

在excel工作表里,随机抽取一个数或两个数。

02

选择数据区域,随机重复,随机抽取

03

选择抽取的个数。不勾选抽中的单元格置空,选择存放位置,完成

04

如果抽中的单元格数据删除,勾选抽中的单元格置空

05

选择存放位置,确定,快速随机抽取数据,完成

5. excel函数随机抽取不重复数据

一、生成0-1之间的随机数。方法:1、在目标单元格中输入公式:=RAND()。2、如果要重新生成,按F9刷新即可。解读: Rand函数没有参数,可以生成0-1之间的随机数,小数位数可以具体到15位。

二、1—N、N—N+N之间的随机数。方法:1、在目标单元格中输入公式:=RANDBETWEEN(1,20)、=RANDBETWEEN(50,100)。2、如果要重新生成,按F9刷新即可。解读: 1、RANDBETWEEN函数具有两个参数,分别为随机数范围的起始值和终止值,包括起始值和终止值。 2、从上述的两个示例中我们可以看出,随机数的生成技巧,但是,生成的随机数中有重复值,如果我们不需要重复值,该如何去操作呢?

三、1-10不重复计数。方法:1、在辅助列1中输入公式:=RAND()。2、将辅助列1中的随机值以【值】的行驶粘贴到辅助列2中。3、在不重复列中输入公式:=RANK(D3,D$3:D$12)。4、对不重复列【排序】。

四、1-N不重复随机数。方法:1、在辅助列1中输入公式:=RAND()。2、将辅助列1中的随机值以【值】的行驶粘贴到辅助列2中。3、在不重复列中输入公式:=RANK(D3,D:D)。4、对不重复列【排序】。解读: 数字N可以根据实际需要来决定,如果有多行,辅助列1和辅助列2的值也需要N行即可。

五、20-40之间的不重复随机数。方法:1、在辅助列1中输入公式:=RAND()。2、将辅助列1中的随机值以【值】的行驶粘贴到辅助列2中。3、在不重复列中输入公式:=RANK(D3,D:D)+19。4、对不重复列【排序】。解读:1、生成20-40之间的随机数,相对于生成1-N之间的随机数唯一不同之处在于公式:=RANK(D3,D:D)+19中加了19,所以大家要注意哦。2、生成N-N+X之间的数,辅助值的确定方法为N-1,例如生成20-40之间的数,加的值为20-1=19。

六、200-400之间的不重复随机数。方法:1、在辅助列1中输入公式:=RAND()。2、将辅助列1中的随机值以【值】的行驶粘贴到辅助列2中。3、在不重复列中输入公式:=RANK(D3,D:D)+199。4、对不重复列【排序】。

6. excel随机抽取n个数据不重复

1、电脑打开Excel,要统计这一列中有多少个不重复的个数。

2、输入公式=COUNTIF($C$1:$C$15,C1)。

3、输入公式后,得到3代表C2单元格中的输入在这一列中出现了3次。

4、下拉复制公式,显示1的都是不重复的数据。

5、如果要统计1的个数,输入公式=COUNTIF(E1:E15,"1")。

6、按回车键后,就可以得到1的总数了。

7. Excel怎样快速从数据中随机抽取n个不重复显示

用vba编个程序可以实现。

将一个案例分享给大家。程序页面如下:

部分代码如下:

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

Dim ysARR(1 To 3, 1 To 3) As Integer '三种颜色参数

Dim zjZD '仅存放姓名+半角分号(;)+4位尾号

Dim myName As String

Dim hxRs As Integer, ZJRS As Integer '候选人数,中奖人数

Const lsRs = 100 '存放100位候选人

Set zjZD = CreateObject("scripting.dictionary")

'ReDim jgarr(1 To ZJRS) As Long

A = 0 '

ysARR(1, 1) = 255: ysARR(1, 2) = 250: ysARR(1, 3) = 0

ysARR(2, 1) = 255: ysARR(2, 2) = 10: ysARR(3, 3) = 10

ysARR(3, 1) = 255: ysARR(3, 2) = 250: ysARR(3, 3) = 0

'清空颜色

For I = 1 To 15

myName = "TextBox" & I

Set xx = Me.Controls(myName)

xx.BackColor = RGB(255, 255, 255)

xx.ForeColor = RGB(255, 215, 0)

xx.Font.Size = 10

xx.BackStyle = 0

ZZ3 = ZZ3 - 1

If ZZ3 = 0 Then ZZ3 = 15

Next I

zb = ComboBox1.Value

dj = ComboBox2.Value

ZJRS = ComboBox3.Value '中奖人数

'读取还可抽取人数

With Sheets("中奖人数设定")

For I = 3 To 8

If .Cells(I, 2) = zb Then Exit For

Next I

For j = 9 To 11

If .Cells(2, j) = dj Then Exit For

Next j

kcqrs = .Cells(I, j) '可抽取人数

End With

If ZJRS = 0 Or ZJRS > kcqrs Or ZJRS > 15 Then

MsgBox ("抽奖人数设置不正确!")

Exit Sub

End If

ReDim jgarr(1 To ZJRS, 1 To 2)

'读取候选人 放入sarr

Select Case zb

Case "A"

lh = 2

Case "B"

lh = 5

Case "C"

lh = 8

Case "D"

lh = 11

Case "E"

lh = 14

Case "F"

lh = 17

End Select

hxRs = 0

With Sheets("人员清单")

HH = 3

Do While .Cells(HH, lh) <> ""

If .Cells(HH, lh + 2) = "" Then '检查是否中奖,已经中奖的不得参与摇奖

hxRs = hxRs + 1

SARR(hxRs, 1) = .Cells(HH, lh)

SARR(hxRs, 2) = .Cells(HH, lh + 1)

End If

HH = HH + 1

Loop

End With

ZZ1 = 0: ZZ2 = 0: ZZ3 = 0

upperbound = hxRs

lowerbound = 1

'1-11:中奖人数和候选人数一样时,单独做一个循环

If ZJRS < hxRs Then GoTo 200

'一样时

Do While True

For ZZ2 = 1 To hxRs

myName = "TextBox" & ZZ2

Set xx = Me.Controls(myName)

xx.Text = SARR(ZZ2, 1) & Chr(10) & Right(SARR(ZZ2, 2), 4)

Next ZZ2

DoEvents '释放程序控制权,允许其他事件

Sleep (5) '延时ms

DoEvents '释放程序控制权,允许其他事件

If A = 1 Then GoTo 300

Loop

200:

Do While True

100:

SJS = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

MYKEY = Trim(SARR(SJS, 1)) & ";" & Trim(Right(SARR(SJS, 2), 4))

If zjZD.EXISTS(MYKEY) Then

ZZ1 = ZZ1 + 1

If ZZ1 > 10000 Then

MsgBox ("数据异常!!!")

Exit Sub

End If

GoTo 100

End If

'ZZ1 = ZZ1 + 1

'If ZZ1 = 101 Then ZZ1 = 1

ZZ2 = ZZ2 + 1

If ZZ2 = ZJRS + 1 Then ZZ2 = 1

'ZZ3 = ZZ3 + 1

'If ZZ3 = 4 Then ZZ3 = 1

'lsARR(ZZ1) = sjs

myName = "TextBox" & ZZ2

Set xx = Me.Controls(myName)

'xx.Text = Left(SARR(SJS, 2), 3) & "XXXX" & Right(SARR(SJS, 2), 4)

xx.Text = SARR(SJS, 1) & Chr(10) & Right(SARR(SJS, 2), 4)

zjZD.RemoveAll

For I = 1 To ZJRS

myName = "TextBox" & I

Set xx = Me.Controls(myName)

If xx.Text <> "" Then

MYKEY2 = qczf(Left(xx.Text, InStr(xx.Text, Chr(10)) - 1)) & ";" & Right(xx.Text, 4)

zjZD.Add MYKEY2, I

End If

Next I

'xx.BackColor = RGB(ysARR(ZZ3, 1), ysARR(ZZ3, 2), ysARR(ZZ3, 3))

DoEvents '释放程序控制权,允许其他事件

Sleep (5) '延时ms

DoEvents '释放程序控制权,允许其他事件

300:

If A = 1 Then

For I = 1 To ZJRS

myName = "TextBox" & I

Set xx = Me.Controls(myName)

xx.BackColor = RGB(ysARR(1, 1), ysARR(1, 2), ysARR(1, 3))

xx.ForeColor = RGB(0, 0, 255)

xx.Font.Size = 20

xx.BackStyle = 1

'ZZ3 = ZZ3 - 1

'If ZZ3 = 0 Then ZZ3 = 15

Next I

Exit Sub

End If

Loop

End Sub

Private Sub CommandButton5_Click()

A = 1

End Sub

Private Sub CommandButton6_Click() '记录中奖信息

Dim zjZD

Dim ZJRS

Dim zjArr

zb = ComboBox1.Value '组别

dj = ComboBox2.Value '等级

ZJRS = ComboBox3.Value '中奖人数

Set zjZD = CreateObject("scripting.dictionary")

'遍历文本框,获取中奖的电话号码

For I = 1 To ZJRS

myName = "TextBox" & I

Set xx = Me.Controls(myName)

ARR = Split(xx.Text, Chr(10))

MYTEXT = qczf(ARR(0)) & ";" & qczf(ARR(1))

zjZD.Add MYTEXT, I

xx.Text = ""

xx.BackColor = RGB(255, 255, 255)

Next I

Select Case zb

Case "A"

lh = 2

Case "B"

lh = 5

Case "C"

lh = 8

Case "D"

lh = 11

Case "E"

lh = 14

Case "F"

lh = 17

End Select

With Sheets("人员清单")

For I = 3 To .Cells(10000, lh).End(xlUp).Row

'SARR(SJS, 1) & Chr(10) & Right(SARR(SJS, 2), 4)

'mytext = Left(.Cells(I, lh + 1).Text, 3) & Right(.Cells(I, lh + 1).Text, 4)

MYTEXT = qczf(.Cells(I, lh).Text) & ";" & qczf(.Cells(I, lh + 1).Text)

If zjZD.EXISTS(MYTEXT) Then

.Cells(I, lh + 2) = dj

End If

Next I

End With

End Sub

Private Sub Frame2_Click()

xxx = 1

End Sub

Private Sub UserForm_Initialize()

Dim xstr(1 To 6) As String '保存每列的数据

Dim ystr(1 To 3) As String

Dim zstr(1 To 15) As Integer '

xstr(1) = "A"

xstr(2) = "B"

xstr(3) = "C"

xstr(4) = "D"

xstr(5) = "E"

xstr(6) = "F"

ComboBox1.List = xstr

ystr(1) = "一等奖"

ystr(2) = "二等奖"

ystr(3) = "三等奖"

ComboBox2.List = ystr

For I = 1 To 15

zstr(I) = I

Next I

ComboBox3.List = zstr

ComboBox3.Value = 15

End Sub

8. excel随机选取数据不重复怎么办

excel快速筛选不重复项的步骤

1.首先选中表格中需要筛选的数据的区域,点击“数据”选项卡。

2.然后在“数据”选项卡中找到“排序和筛选”,点击“高级”。

3.在弹出的“高级筛选”框中,勾选“不重复的记录”,点击确定,数据中重复数据就全部筛选出来。

注意事项

数据中重复内容的格式必须要一样,不然可能会把格式不同的重复内容也筛选到不重复的数据中来。

9. excel随机选取数据不重复值

1、如果数据在Sheet2 的A:D列,在Sheet2的A列前插入两列辅助列;

2、在左上角的名称框中,输入A2:A953,按Enter键,将A2:A953单元格选中,输入=RAND(),按Ctrl+Enter组合键结束,快速向A2:A953单元格中输入随机数(随机数的重复机率极低);

3、在B2单元格输入以下公式,然后向下填充公式,得到A列数据的排名(同样没有重复排名)

=RANK(A2,A:A)

4、在Sheet1的A2单元格输入以下公式,然后向右向下填充公式到D361单元格,得到由Sheet2工作表中随机取得的不重复的360行数据

=VLOOKUP(ROW()-1,Sheet2!$B:$F,COLUMN(B1),0)

公式表示:以当前行号在Sheet2的B列精确匹配对应行,并返回对应第2列(Sheet2的C列)数据。

5、因随机取数时,工作表只要输入一个数据,就会在“自动计算”中 重新得到一组数据,因此,可以将Sheet2的A列,“复制”并“选择性粘贴”为“数值”,避免数据不断变换。或者将“公式”选项中的“计算选项”设置为“手动”。

6、注意:通过RANDBETWEEN函数得到随机函数的方法,会出现重复数据,从而达不到既随机又唯一取数的目的,没有RAND得到一列不重复的随机数再排名来得科学有效。

10. 用excel不重复抽取随机数据

Excel表格随机提取数据方法如下

1.首先打开需要处理的表格,并在表格前插入两列辅助列。

2.在A列上方的小框中输入A2:A953即可选中A整列。

3.输入=RAND()并同时按下Ctrl+enter键即可快速输入随机数。

4.在B2单元格输入=RANK(A2,A:A)并按enter键。

相关推荐

企业办公软件都有哪些?

办公自动化 2024-01-14

数控车床自动编程用什么软件?

办公自动化 2024-01-12

写字间物业管理方案

办公自动化 2023-12-09

自动化的好处和坏处

办公自动化 2023-12-05

单片机有什么特征?

办公自动化 2023-11-27

excel2007教程|excel2007教程下载

办公自动化 2023-11-22