在countifs范围内使用数组公式

时间:2016-10-25 11:10:24

标签: excel excel-formula

下午的家伙,

我尝试使用数组作为标准范围来评估countifs公式。

我的表名为tblSkillsMatrix,并设置了以下标题; 角色职员技能1技能2技能3技能4技能5技能6技能7技能8技能9技能10等

有一个名为tblRoles的对应表。标题是角色标题,行包含所需的技能,例如技能1,技能3,技能5,技能8等

我希望我的countifs函数计算在相应角色的相关技能下显示为训练的项目数。正常公式看起来像这样;

=COUNTIFS(tblSkillsMatrix[[#All],[Role]],'Skills Summary'!C16,tblSkillsMatrix[[#All],[Skill 1]],"Trained",tblSkillsMatrix[[#All],[Skill 3]],"Trained",tblSkillsMatrix[[#All],[Skill 5]],"Trained",tblSkillsMatrix[[#All],[Skill 8]],"Trained")

是否有使用数组公式来确定我应该使用哪些列?所以公式看起来就像这样;

=COUNTIFS(tblSkillsMatrix[[#All],[Role]],'Skills Summary'!C16,Array{columns to evaluate},"Trained")

非常感谢

1 个答案:

答案 0 :(得分:1)

数组公式**

=SUM(IF(tblSkillsMatrix[Role]='Skills Summary'!C16,IF(MMULT(0+(T(OFFSET(INDIRECT("tblSkillsMatrix["&TRANSPOSE(tblRoles[JobType])&"]"),ROW(tblSkillsMatrix[Role])-MIN(ROW(tblSkillsMatrix[Role])),))="Trained"),ROW(tblRoles[JobType])^0)=COUNTA(tblRoles[JobType]),1)))

请注意,我更改了您的表格引用以排除标题,因为我认为您实际上并不需要将它们包括在计数中?

此致

**数组公式的输入方式与'标准'相同。公式。您只需按住CTRL和SHIFT键,然后按ENTER键,而不是按ENTER键。如果您已正确完成,您会注意到Excel在公式周围放置了大括号{}(尽管不要尝试自己手动插入这些括号)。