dota飞机:如何在EXCEL表格中随机提取数据

来源:百度文库 编辑:高考问答 时间:2024/05/07 16:45:38
我有三万条数据,内容有四项,依次为:

客户姓名 联系方式 联系地址 联系城市

比如说:
联系城市一列的城市有很多,比如上海、北京、青岛、郑州等等共40个
我现在想在每个城市中随机抽查10位客户

通过EXCEL,有什么办法可以很方便的完成呢?谢谢!
.
.
“然后用自动筛选每个城市,取前10个客户”那还是要不停的点自动筛选?如果我需要100个客户数据呢?
我现在的方法就是随机排序后,一个城市一个城市的选择我需要的内容,并不是四十个城市,那只是一个例子,最多时会有三百个城市,来来回回点三百次?唉~手要断了
.
.

先在“客户姓名”前插入一列,这里当是A列,用来产生随机数。如下:

“随机数 客户姓名 联系方式 联系地址 联系城市” 本例当在第 2 行。再把这行文字复制到I2-M2

在A3用以下公式:=IF(E3=$H$3,ROUND((RAND()*10000),-3)+ROW(),""),作用是产生一个随机数,拖曳填充至最后。

单元格H3:填写城市名称:如“广州”等。这里可以使用数据中下拉序列。

单元格H6:=COUNTIF(A:A,">0")。统计这个城市共有多少客户。

I3: =LARGE(A:A,ROW(A1))

J3: =VLOOKUP(I3,A:E,2,0)

k3: =VLOOKUP(I3,A:E,3,0)

L3: =VLOOKUP(I3,A:E,4,0)

M3: =VLOOKUP(I3,A:E,5,0)

把I3-M3向下拖曳复制10行。要多少人就拖多少行。

双击任一单元格都能产生一个新的10人名单。

学到很多东西,我也想到了一个比较笨的办法。:P

首先也是先插入一列,定义一个随机数。

然后按随机数排序一次,把全部数据打乱。

然后把全部数据选上,选择菜单--数据--数据透视表和数据透视图。

出现向导,这里不需要设置什么,然后直接按完成。

会出现一个数据透视表,然后把数据透视表字段列表里面的联系城市拖放到【行字段】那里,把客户姓名 联系方式 联系地址这三个字段随便选择一个,拖放到【请将数据项拖至此处】,这样就会出现一个按城市分类的数据统计透视图,计算有多少个城市且每个城市有多少个客户。

最后一步就是,双击每个城市的汇总数目(例如北京这个城市,假如有18个客户资料,那么在汇总那个单元格就有18这个数值,对着这个单元格双击一下),这样就会自动新建一个新的数据表,里面有所有北京这个城市的客户资料。然后选择前十个客户资料就可以了,因为原来已经随机排序了一次,客户顺序是随机的。

如果需要再次打乱,可以重复第一步,按随机数排序一次,然后刷新数据透视表里面的数据即可。

给你一组公式:
=INDEX(A:A,INT(RAND()*10),1)
在A列中随机选取一个单元格.

RAND()返回大于等于 0 及小于 1 的均匀分布随机数,每次更新时都将返回一个新的数值。
10 根据需要可以改为三万
INT 取整
INDEX 引用一个单元格

要灵活运用:
比如你的表是sheet1,在sheet2里输入:
A2=INT(RAND()*30000)
B2=INDEX(Sheet1!A:D,A2,1)
C2=INDEX(Sheet1!A:D,A2,2)
D2=INDEX(Sheet1!A:D,A2,3)
E2=INDEX(Sheet1!A:D,A2,4)

然后复制30000行:
选中A2-E2,把鼠标移到E2右下角,鼠标会变成+
按住左键下拉到30000行(够用就行),

然后用自动筛选每个城市,取前10个客户
因为随机数并不保证不重复,如有重复顺序多选几个客户就是了,
删除重复数据的方法也很多,但你只取10个,目视即可.

这早就超出原来"随机提取数据"的问题了.
办法有的是,用不着挨个点,我嫌打字麻烦,先加分吧
打字这工夫都能操作好几遍了.
简单说一下吧:
1、先复制再选择性粘贴sheet2的A-E列,将公式变成数值,以免数据总变
2、[数据]->[高级筛选]->选择不重复记录,可以筛掉重复记录
3、将不重复记录复制出来,在F2输入=COUNTIF(E$1:E1,E2),然后向下复制这个公式。
4、然后自动筛选F列<=10的记录
OK?

Excel中,可以利用rand或randbetween函数实现数据随机转换。

软件版本:Office2007

举例说明如下:

1.输入公式如下:

2.得到结果:

3.按下F9,公式重新计算,就会得到1到10之间的随机一个数字:

蹲点学习一下,
等待高手回答