如何在 excel 数组公式中获取第一个 TRUE 值
How to get the first TRUE value in an excel array formula
在 Excel 数组公式中 - 当我尝试使用 IF
公式 return 数组中的第一个 TRUE
值时,如果 TRUE
是数组中的第一个条目,但如果 TRUE
出现在后面则不是
例如,这有效 returns "a"
=IF({TRUE,FALSE},{"a","b"})
但这并不像我预期的那样有效 - returns FALSE
=IF({FALSE,TRUE},{"a","b"})
在这种情况下,到达“b”的正确方法是什么?
编辑
我的问题是 - 如果我有一个 恰好 一个 TRUE
值的“逻辑条件”数组,我如何 return 该值对应于TRUE
.
对于数值,我可以使用SMALL
函数,例如-
=SMALL(IF({FALSE,TRUE},{1,4}),1)
This returns 4. 如果我有 {"a", "b"}
而不是上面的 {1, 4}
,是否有我可以使用的等价物。
多种方式:
与 O360:
=XLOOKUP(TRUE,{FALSE,TRUE},{"a","b"})
早期版本:
=HLOOKUP(TRUE,{FALSE,TRUE;"a","b"},2,0)
=INDEX({"a","b"},MATCH(TRUE,{FALSE,TRUE},0))
在 Excel 数组公式中 - 当我尝试使用 IF
公式 return 数组中的第一个 TRUE
值时,如果 TRUE
是数组中的第一个条目,但如果 TRUE
出现在后面则不是
例如,这有效 returns "a"
=IF({TRUE,FALSE},{"a","b"})
但这并不像我预期的那样有效 - returns FALSE
=IF({FALSE,TRUE},{"a","b"})
在这种情况下,到达“b”的正确方法是什么?
编辑
我的问题是 - 如果我有一个 恰好 一个 TRUE
值的“逻辑条件”数组,我如何 return 该值对应于TRUE
.
对于数值,我可以使用SMALL
函数,例如-
=SMALL(IF({FALSE,TRUE},{1,4}),1)
This returns 4. 如果我有 {"a", "b"}
而不是上面的 {1, 4}
,是否有我可以使用的等价物。
多种方式:
与 O360:
=XLOOKUP(TRUE,{FALSE,TRUE},{"a","b"})
早期版本:
=HLOOKUP(TRUE,{FALSE,TRUE;"a","b"},2,0) =INDEX({"a","b"},MATCH(TRUE,{FALSE,TRUE},0))