如何随机选取指定数量含文本的Excel单元格并拼接为字符串
无VBA实现Excel随机抽取指定数量标签的方法
完全不需要写VBA代码,用Excel自带功能就能实现300个话题标签的随机抽取,以下是两种可直接使用的方案:
方案1:全版本通用操作法
所有Excel版本都能兼容,不需要考虑函数支持问题:
- 第一步:假设所有话题标签存在A列,从A2单元格开始(A1为表头),在相邻的B2单元格输入
=RAND(),回车后下拉填充到A列最后一个标签对应的行,B列会生成一组0到1之间的随机数 - 第二步:选中B列任意单元格,点击工具栏的「升序」或「降序」排序按钮,弹窗提示时选择「扩展选定区域」后确认,A列的标签顺序会被完全随机打乱
- 第三步:直接从打乱后的A列顶部开始,选取你需要的数量(比如10个)标签即可。每次重新触发B列随机数计算、再排序,就能得到一组新的随机标签
小提示:RAND函数会随表格操作自动刷新数值,如果不想选好的结果随机变动,可以先把B列生成的随机数全选复制,右键选择「选择性粘贴-数值」把随机数固定,再做排序操作。
方案2:新版Excel一键公式法
如果你用的是Excel 365/2021及以上支持动态数组的版本,不用手动排序,单条公式就能直接返回指定数量的不重复随机标签:
- 假设300个标签的存储范围是
A2:A301,要抽取10个的话,找个空白单元格输入公式:=INDEX(SORTBY(A2:A301,RANDARRAY(COUNTA(A2:A301))),SEQUENCE(10)) - 回车后公式会自动溢出返回10个不重复的随机标签,按F9即可刷新得到新的随机结果。
内容的提问来源于stack exchange,提问作者Benjamin1956
相关产品推荐
相关产品推荐

