【问题标题】:Excel formula doesn't workExcel公式不起作用
【发布时间】:2018-06-05 02:25:33
【问题描述】:

我在 K1:S1 中有这些数字 (5,6,5,7,7,9,4,8​​,9)。并有这个公式

{=IFERROR(INDEX($K1:$S1,SMALL(IF($K1:$S1=5,COLUMN($K1:$S1)),COLUMN(K:K))),"")}

在 U1:Z1 中。该公式应该选择相同的数字(在此示例中为 5)并将它们放入单元格 U1:Z1(如果有)。相同的公式用于不同单元格中列表中的所有可用数字。但我对这个公式有疑问,它现在不起作用。我不知道为什么。如果有人可以为此函数建议一个替代公式或告诉我公式有什么问题,我会很高兴。

示例 excel 文件(更新):https://1drv.ms/x/s!AoGkZUHlKui9gRzvwv2CVLi5rOtc

【问题讨论】:

  • 您在输入时是否按了Ctrl+Shift+Enter?
  • 是的,我做到了。我仍然无法运行公式。
  • 删除IFERROR 会返回#NUM! 错误。如果您使用公式评估工具,您将看到您的公式正在查找包含 9 个值的数组中的第 11 个最小值。因此错误。 由于您没有显示您正在寻找的结果,我无法推荐任何更改
  • 为了使公式更有效并且更健壮,将 COLUMN(K:K) 替换为 COLUMNS 函数,引用第一个单元格的公式,你说那是 U1,所以在 U1 中使用 COLUMNS($U1:U1)。那应该可以解决它,但是对于这个特定的示例,有更简单的方法可以实现这一点
  • @RonRosenfeld 感谢您的反馈。我更新了excel文件。您现在可以在那里看到预期的结果。

标签: excel excel-formula


【解决方案1】:

也许是为了更简单的建议......

=IF(COUNTIF($K1:$S1,5)>=COLUMNS($U1:U1),5,"")

这个版本不需要IFERROR

要使您的原始公式起作用,请尝试在 U1 中复制此版本

=IFERROR(INDEX($K1:$S1,SMALL(IF($K1:$S1=5,COLUMN($K1:$S1)-COLUMN($K1)+1),COLUMNS($U1:U1))),"")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-18
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-20
    • 1970-01-01
    相关资源
    最近更新 更多