Excel:返回意外结果的数组公式

时间:2014-10-02 12:39:16

标签: arrays excel excel-formula

我有公式:

=IF(C2=$C$1:C2,1,0)

返回值1(我相信这是正确的,因为C2将找到与C2匹配)。我的问题是,如果我把它变成一个数组公式

{=IF(C2=$C$1:C2,1,0)}

这会返回值0,但我不确定原因。

有人可以就每个公式的不同结果提供解释吗?

1 个答案:

答案 0 :(得分:1)

在非数组版本中,您将一组单元格传递给IF函数这一事实是多余的,因为在没有数组强制的情况下,数组只会解析为该数组中的第一个单元格,即C1,所以有效地(非阵列)构造:

= IF(C2 = $ C $ 1:C2,1,0)

与简单相同:

= IF(C2 = $ C $ 1,1,0)

在数组版本中,只有当两者 C1和C2中的值等于C1中的值时,才会返回1(尽管这本身有点多余,因为C1中的值总是等于它自己!)。

你究竟想用这种奇怪的结构做什么?

此致