Ash*_*osh 10 microsoft-excel-2007 worksheet-function microsoft-excel microsoft-excel-2010
我想生成一个以任何顺序具有随机字符串值的列。这些字符串值必须来自 ('New', 'Mint', 'Very Good', 'Good', 'Acceptable', 'Poor') 字符串?任何人都可以让我知道如何使用RANDBETWEEN函数来用括号中提到的数据填充我的列?
And*_*ohr 15
如果您的字符串在第一列中,您可以使用如下CHOOSE()函数:
=CHOOSE(RANDBETWEEN(1,6),$A$1,$A$2,$A$3,$A$4,$A$5,$A$6)
Run Code Online (Sandbox Code Playgroud)
RANDBETWEEN(1,6)将从 1 到 6 中随机选择一个数字n -CHOOSE然后计算您列出的所有参数(A 列中的字符串)并显示第n项。
如果您有多个项目要处理CHOOSE,那么维护这个公式就会变得笨拙。
在这种情况下,插入一个表(我们称之为MyStrings),使用在 A 列中创建一个 ID 列=ROW()-1并将我们的公式切换到 a可能是个好主意VLOOKUP。我们可以使用MIN&MAX和结构化引用来动态计算表中有多少个术语,用于RANDBETWEEN:
=VLOOKUP(RANDBETWEEN(MIN(MyStrings[ID]),MAX(MyStrings[ID])),MyStrings,2,0)
Run Code Online (Sandbox Code Playgroud)
RANDBETWEEN是一个 volatile 函数,这意味着它会在每次任何其他单元格更改时(工作簿中的任何位置)重新计算。如果您需要将随机生成的字符串在生成后保持不变,则需要复制并粘贴特殊值作为值。
如果您使用大量 volatile 函数,它可能会减慢您的工作簿速度,但您可以采取一些措施来缓解这种情况。
Exc*_*lll 10
您可以使用INDEXwithRANDBETWEEN来执行此操作。
=INDEX({"New","Mint","Very Good","Good","Acceptable","Poor"},RANDBETWEEN(1,6))
Run Code Online (Sandbox Code Playgroud)
只需在您的列中填写此公式即可。
| 归档时间: |
|
| 查看次数: |
17513 次 |
| 最近记录: |