![如何显示从列表中随机选择的给定数量的名称](https://linux22.com/image/1428199/%E5%A6%82%E4%BD%95%E6%98%BE%E7%A4%BA%E4%BB%8E%E5%88%97%E8%A1%A8%E4%B8%AD%E9%9A%8F%E6%9C%BA%E9%80%89%E6%8B%A9%E7%9A%84%E7%BB%99%E5%AE%9A%E6%95%B0%E9%87%8F%E7%9A%84%E5%90%8D%E7%A7%B0.png)
我在 A 列中有一个包含 148 个姓名的列表。我需要一个函数,让用户输入一个数字,并使用该数字返回 B 列或 C 列中的姓名列表。可以重复。因此,B 列会提示我:“输入所需的姓名数量”,在我输入数字(例如“4”)后,在该提示下方或 C 列中,“4”个姓名将列在不同的单元格中,甚至列在同一个单元格中,中间用逗号分隔。此工作簿最终将嵌入 Wordpress.com 网站。
我在网上找了一些例子。这篇博客解释了类似的事情:
http://datawiz.wordpress.com/2011/01...-from-a-sheet/
它们会提示用户查找婴儿名字的流行度。但由于我不太懂 Excel 中的操作,所以我搞不清楚如何将他的公式准确地应用到我的问题上。
有什么建议么?
我还应该说我已经尝试过这些公式,它们只会在包含公式的单元格中给我一个结果:
=INDEX($A1:$A148,RANDBETWEEN(1,COUNTA($A1:$A148)),1)
=INDEX(A1:A148, RANDBETWEEN(1, 148))
=INDEX(Tanglelist, RANDBETWEEN(1, 148))
我在其他论坛上问过这个问题,但没有答案。但有人建议使用这个公式,我想这是朝着正确方向迈出的一步:
=IF(ROWS(B$2:B2)>$B$1,"",INDEX(Tanglelist,RANDBETWEEN(1,ROWS(Tanglelist))))
答案1
只需将结果再进一步。假设数字输入到 B1 中。在 C1 中:
=IF(ROW(c1)>$B$1,"",INDEX($A$1:$A$148,RANDBETWEEN(1,148)))
将其复制到该列。现在您将获得 B1 中指定的 C 中行数的随机选择。