![如何从 Excel 中的一组可用字符串生成随机字符串?](https://linux22.com/image/1473185/%E5%A6%82%E4%BD%95%E4%BB%8E%20Excel%20%E4%B8%AD%E7%9A%84%E4%B8%80%E7%BB%84%E5%8F%AF%E7%94%A8%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%94%9F%E6%88%90%E9%9A%8F%E6%9C%BA%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%9F.png)
我想生成一个列,该列将包含任意顺序的随机字符串值。这些字符串值必须来自(“New”、“Mint”、“Very Good”、“Good”、“Acceptable”、“Poor”)字符串?有人能告诉我如何使用RANDBETWEEN
函数用括号中提到的数据填充我的列吗?
答案1
如果你只有几根弦
如果您的字符串在第一列,则可以使用CHOOSE()
如下函数:
=CHOOSE(RANDBETWEEN(1,6),$A$1,$A$2,$A$3,$A$4,$A$5,$A$6)
RANDBETWEEN(1,6)
将随机选择一个数字n从 1 到 6 -CHOOSE
然后计算你列出的所有参数(A 列中的字符串)并显示第 n 个学期。
但是,如果你有很多字符串
如果要从多个项目中提取CHOOSE
数据,则维护此公式会变得很困难。
在这种情况下,插入表格(我们称之为我的弦乐),使用 在 A 列中创建一个 ID 列=ROW()-1
,并将公式切换为VLOOKUP
。我们可以使用MIN
&MAX
和结构化引用动态计算出表中有多少个术语,以供使用RANDBETWEEN
:
=VLOOKUP(RANDBETWEEN(MIN(MyStrings[ID]),MAX(MyStrings[ID])),MyStrings,2,0)
现在要小心
RANDBETWEEN
是一个易失性函数,这意味着每当任何其他单元格发生变化时(工作簿中的任何地方),它都会重新计算。如果您需要将随机生成的字符串保持在生成后的状态,则需要复制并选择性粘贴为值。
如果你使用大量的易失性函数,它可能会减慢你的工作簿速度,但是你可以采取一些措施来缓解这种情况。
答案2
您可以INDEX
一起使用来RANDBETWEEN
执行此操作。
=INDEX({"New","Mint","Very Good","Good","Acceptable","Poor"},RANDBETWEEN(1,6))
只需将此公式填入您的列中即可。