Excel里有没有一条公式可以在表格里随机抽取10%的数据出来呢?

如题,我必须从几百条数据里提取10%的数据,但是人手去弄的话可能不是很全面。请协助一下,谢谢!

假设你的“几百条”数据在A列,在B列对应的行里输入随机函数 =RAND()
这样就在B列产生了“几百条”大于等于 0 及小于 1 的均匀分布随机数,然后将B列数据拷贝,“将B列的数值”粘贴到C列(这一步很重要,不能省),在D列输入 =if(C1<=0.1,A1,""),就可以在A列中随机选出10%的数据了。

注:若要选20%,只需=if(C1<=0.2,A1,"") 即可。其余依次类推。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-12
直接随机选出来10%的单元格真的不太可能...

几百条数据,还好,电脑配合手工吧:
先给每条数据从1开始编号
然后产生0-1范围的随机数
然后前10%数量的随机数对应到数据编号(例如计划抽取70条,70*随机数再取整,如果和前面的重复了,下一个随机数乘以70取整...)
然后手工选数据本回答被提问者采纳
第2个回答  2010-10-12
如果数据在A1:A1000中,B2中输入
=INDEX(A$1:A$1000,SMALL(IF(COUNTIF(B$1:B1,A$1:A$1000)=0,ROW(A$1:A$1000)),RANDBETWEEN(1,1000-ROW(A1))))
同时按下CTRL+SHIFT+ENTER输入数组公式,再用自动填充柄向下复制,就可以了。
就是其中的的RANDBETWEEN函数在2007版中可以直接使用,如果是2003版中,要安装加载项才能使用。还有A1:A1000中不得有空格存在,必须全部有数字,如果地址不是A1:A1000,自己调整。
弄好之后,不断按下F9,看看效果。