我之前曾要求提供一个范围内的随机数生成器(范围内的唯一字符串值我正在寻找一种方法,从给定的一组值中随机生成一串“唯一”的数字,例如 1,45,23,90,23 等等。
另外,在上一个问题中,程序似乎每次执行时都会生成相同的随机值,并且不会保存。
答案1
您应该将唯一数字列表放在单元格列中。使用 randbetween 和 index 来选择数字。在 A1:A10 中使用唯一数字
=Index(A1:A10, RANDBETWEEN(1, 10))
答案2
生成“随机排列”的一个简单方法就是对数字进行随机排序,例如将 A1:A10 中的数字放在 B1 中,然后将此公式复制到 B10
=RAND()
现在选择 A1:B10 并按 B 列排序 - 现在您已经随机排列了 A1:A10 - 重复排序以获得新的随机排列
如果您想要一个公式,则无需使用 B1:B10,只需Joop's
在 C1 中用公式生成第一个数字,然后将此公式放在 C2 中
=SMALL(IF(COUNTIF(C$1:C1,A$1:A$10)=0,A$1:A$10),RANDBETWEEN(1,COUNT(A$1:A$10)-ROWS(C$2:C2)))
用CTRL++确认并复制到C10SHIFTENTER