返回数组中唯一的非FALSE值

时间:2018-09-13 12:10:14

标签: excel excel-formula

我有以下数组:{FALSE; FALSE; FALSE;“ $ D $ 3”; FALSE}。只有一个非FALSE值。是否可以在此数组上使用公式来返回此值(此处为“ $ D $ 3”)?

我尝试了max,min,sum,但是由于它不是数字值,因此无法正常工作。

谢谢!

4 个答案:

答案 0 :(得分:1)

您可以使用nominal函数:

LOOKUP
  • =LOOKUP(2,1/({FALSE;FALSE;FALSE;"$D$3";FALSE}<>FALSE),{FALSE;FALSE;FALSE;"$D$3";FALSE}) 根据条件返回(array<>FALSE)的数组
  • {TRUE;FALSE...}然后将其转换为1/(…)的数组
  • {1;DIV/0;...}然后将返回原始数组中不为假的最后位置。

enter image description here

答案 1 :(得分:1)

如果您的数组位于中,请使用类似以下内容:

=INDEX(A:A,MATCH("*",A1:A5,0))

enter image description here

答案 2 :(得分:1)

假设一个非FALSE条目是文本,而不是数字:

=LOOKUP(REPT("z",255),Rng)

用所需的数组替换Rng。

致谢

答案 3 :(得分:0)

使用循环:

Sub dural()
    arr = Array(False, False, False, "$D$3", False)
    For Each a In arr
        If a <> False Then
            MsgBox a
        End If
    Next a
End Sub

enter image description here