问题情境
如下样表:
统计各个部门参与考核的人数。其中:请假的不参与考核。
公式实现
在F2单元格输入公式:
=SUMPRODUCT((B2:B15=E2)*ISNUMBER(C2:C15))
即可计算指定部门参与考核的人数(请假除外)。
如下图:
公式解析
(B2:B15=E2):
比较B2:B15各单元格与E2单元格值是否相等,如相等返回TRUE,不相等则返回FALSE,所以,此部分返回由TRUE与FALSE组成的数组:
{TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;}(数组1)
ISNUMBER(C2:C15):
判断C2:C15各单元格的值是否为数值,如是返回TRUE,不是则返回FALSE,所以,此部分也返回由TRUE与FALSE组成的数组:
{TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;}(数组2)
SUMPRODUCT((B2:B15=E2)*ISNUMBER(C2:C15)):
将数组1与数值2对应位置的值相乘,然后加和,即得结果。