以下是引用山菊花在2006-3-13 21:46:30的发言:这个公式是gvntw版主写的,应该有过解释。
公式 COUNTIF($B$1:B2,$A$2:$A$7) 计算区域 $B$1:B2 中包含 $A$2:$A$7 每一个元素的个数。
把公式展开,相当于:
COUNTIF($B$1:B2,$A$2) =1
COUNTIF($B$1:B2,$A$3) =1
…………
COUNTIF($B$1:B2,$A$7) =0
把公式展开,相当于:
COUNTIF($B$1:B2,$A$2) =1
COUNTIF($B$1:B2,$A$3) =1
…………
COUNTIF($B$1:B2,$A$7) =0
因为是数组公式,该公式返回的结果是一个与 $A$2:$A$7 大小相同的数组,最后结果是 {1;1;0;1;1;0}
因为是数组公式,该公式返回的结果是一个与 $A$2:$A$7 大小相同的数组,最后结果是 {1;1;0;1;1;0}
取得的结果主要是判断
$A$2:$A$7 中的元素是否在结果区域
$B$1:B2 中出现过,从中获得第一个没出现的元素的位置,即 0 的位置。
该例 $B$1:B2 中第一个没出现的元素是“1”,有:
COUNTIF($B$1:B2,A4)=0
即:COUNTIF($B$1:B2,1)=0
0在结果数组中的位置是3。
取得的结果主要是判断 $A$2:$A$7 中的元素是否在结果区域 $B$1:B2 中出现过,从中获得第一个没出现的元素的位置,即 0 的位置。
取得的结果主要是判断
$A$2:$A$7 中的元素是否在结果区域
$B$1:B2 中出现过,从中获得第一个没出现的元素的位置,即 0 的位置。
该例 $B$1:B2 中第一个没出现的元素是“1”,有:
COUNTIF($B$1:B2,A4)=0
即:COUNTIF($B$1:B2,1)=0
0在结果数组中的位置是3。
MATCH(,COUNTIF($B$1:B2,$A$2:$A$7),) 相当于 MATCH(,{1;1;0;1;1;0},) 其中省略参数默认值为0,即公式相当于:
MATCH(0,{1;1;0;1;1;0},0) 它的结果是3。
这个3的意义是, $A$2:$A$7 中,第一个没有在区域 $B$1:B2 中出现的元素是第3个,即A4单元格的值,即“1”。
MATCH(,COUNTIF($B$1:B2,$A$2:$A$7),) 相当于 MATCH(,{1;1;0;1;1;0},) 其中省略参数默认值为0,即公式相当于:
MATCH(0,{1;1;0;1;1;0},0) 它的结果是3。
这个3的意义是, $A$2:$A$7 中,第一个没有在区域 $B$1:B2 中出现的元素是第3个,即A4单元格的值,即“1”。
=INDEX($A$2:$A$7,MATCH(,COUNTIF($B$1:B2,$A$2:$A$7),)) 相当于:
=INDEX($A$2:$A$7,3) 结果是1。
=INDEX($A$2:$A$7,MATCH(,COUNTIF($B$1:B2,$A$2:$A$7),)) 相当于:
=INDEX($A$2:$A$7,3) 结果是1。