【问题标题】:How to get the first TRUE value in an excel array formula如何在excel数组公式中获取第一个TRUE值
【发布时间】:2021-05-01 14:41:42
【问题描述】:

在 Excel 数组公式中 - 当我尝试使用 IF 公式从数组中返回第一个 TRUE 值时,如果 TRUE 是数组中的第一个条目,它会按预期工作,但如果 @ 987654324@稍后出现

例如,这有效并返回“a”

=IF({TRUE,FALSE},{"a","b"})

但这并不像我期望的那样工作 - 并返回 FALSE

=IF({FALSE,TRUE},{"a","b"})

在这种情况下,到达“b”的正确方法是什么?

编辑

我的问题是 - 如果我有一个“逻辑条件”数组,恰好有一个 TRUE 值,我如何返回与 TRUE 对应的值。

对于数值,我可以使用SMALL函数,例如-

=SMALL(IF({FALSE,TRUE},{1,4}),1)

这将返回 4。如果我有 {"a", "b"} 而不是上面的 {1, 4},是否可以使用等效的东西。

【问题讨论】:

  • 一个单元格只能保存一个值而不是数组,您的公式返回一个数组。第一个{"a",FALSE},第二个{FALSE,"b"},因此它将数组中的第一个值返回到您放置公式的单元格。
  • 问题是你想要的最终结果是什么?

标签: excel excel-formula array-formulas


【解决方案1】:

方法很多:

  • 使用 O360:

     =XLOOKUP(TRUE,{FALSE,TRUE},{"a","b"})
    
  • 早期版本:

    =HLOOKUP(TRUE,{FALSE,TRUE;"a","b"},2,0)
    =INDEX({"a","b"},MATCH(TRUE,{FALSE,TRUE},0))
    

【讨论】:

    猜你喜欢
    • 2019-06-06
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 2019-11-26
    • 1970-01-01
    • 1970-01-01
    • 2015-01-20
    相关资源
    最近更新 更多