遇到不包括重复单词随机填充 Excel 中 3 列的问题

问题描述 投票:0回答:1

我使用从 E 列当前单词列表中抽取的随机文本填充 A 列、B 列和 C 列。这些单词应该填充 A、B 和 C 中向下 25 行。

=INDEX(SORTBY(E2:E26, RANDARRAY(ROWS(E2:E26))), SEQUENCE(25))

上述函数按预期工作,但是,我遇到的问题是我尝试想出的每个 IF 函数都不会让单元格填充重复的单词失败。 25 行中的任何一行都不应出现重复的单词。例如:如果 A 列在第 12 行中有单词“Josh”,则 B 列和 C 列的单元格中不应有单词 Josh,并且应该显示一个空单元格。

最新的尝试如下(我知道它很难看,而且绝对不正确,但我对 Excel 还很陌生):

=IF(INDEX(SORTBY(E2:E26, RANDARRAY(ROWS(E2:E26))), SEQUENCE(25))=A2:A101," ", INDEX(SORTBY(E2:E26, RANDARRAY(ROWS(E2:E26))), SEQUENCE(25)))

上面的代码有点工作,但它只产生一个单词,而不是根据需要产生 25 个单词,我需要它比较每个列(A、B 和 C)中的每一行,以确保该特定行上不存在重复项。

这是产生不需要的重复项的列的示例。

A、B 和 C 列输出并显示重复项

注意:图像中显示的空单元格不是由函数工作产生的,它们是因为从故意提取此信息的列表中包含空白单元格而产生的。

我在 Stackoverflow 上进行了搜索,并在网上进行了广泛的搜索,但未能找到可行的解决方案。

任何帮助或建议来指导我完成其应有的工作功能,我将非常感激。

我尝试过测试各种形式的 IF 函数,但没有成功。

excel function random duplicates
1个回答
0
投票

为了简单起见,该公式生成随机整数进行测试。
如果一行中至少有一对数据,则公式会为该行的单元格返回一个空字符串。

=LET(tab,INT(RANDARRAY(25,3,1,25)),
part,IF((CHOOSECOLS(tab,1)=CHOOSECOLS(tab,2))+ 
 (CHOOSECOLS(tab,1)=CHOOSECOLS(tab,3))+ 
 (CHOOSECOLS(tab,3)=CHOOSECOLS(tab,2)),"",tab),
part)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.