在 LibreOffice Calc 中,我试图从一组单元格中的随机单元格中检索值,其中一些单元格可能包含单词“无”,我不希望在选择随机单元格时选择任何一个...示例:
输入 | 输出 |
---|---|
或许 | 时间 |
时间 | 时间 |
想要 | 或许 |
没有任何 | 想要 |
的 | 告诉 |
我的 | 我的 |
努力 | 时间 |
没有任何 | 能 |
能 | 我的 |
告诉 | 努力 |
然而,我自己能找到的唯一随机化方法是完全随机化,例如:
输入 | 输出 |
---|---|
或许 | 没有任何 |
时间 | 时间 |
想要 | 或许 |
没有任何 | 想要 |
的 | 没有任何 |
我的 | 我的 |
努力 | 时间 |
没有任何 | 能 |
能 | 没有任何 |
告诉 | 努力 |
答案1
我认为做到这一点的最好方法是通过以下方式从列表中过滤掉“无”数据 > 更多 > 标准过滤器。
否则,您将查看数组公式或宏。有关可能解决方案的讨论,请参阅https://ask.libreoffice.org/t/function-formula-to-filter/55461。
如果您可以使用 Google Sheets,则有一个FILTER()
功能可以进行即时过滤。
答案2
如果您需要从单元格列表中检索单元格,请使用INDEX()
。如果你想得到一个随机数,你可以使用RANDBETWEEN()
。现在,只需将它们组合起来:
假设您的“输入”列表位于 A 列中,您可以执行一个公式:
=INDEX($A$2:$A$11, RANDBETWEEN(1, COUNTA($A$2:$A$11)))
或者,如果您为输入范围指定名称,则公式可以更具可读性:
=INDEX(src, RANDBETWEEN(1, COUNTA(src)))
现在按 F9 多次并欣赏列表中的随机单词。