Excel函数问题:按指定员工统计Database表中“Meet Expectation”评价次数
正确实现方案
方法1:使用COUNTIFS函数(推荐,简洁高效)
COUNTIFS是Excel原生的多条件计数函数,可直接满足你的双条件统计需求:
- 条件1:
Database工作表B列(员工姓名列)匹配Employee工作表S3单元格的姓名 - 条件2:
Database工作表E列(评价列)等于“Meet Expectation”
在Employee工作表的AO3单元格输入以下公式:
=COUNTIFS('Database'!$B$2:$B$1000,S3,'Database'!$E$2:$E$1000,"Meet Expectation")
若需要在无匹配结果时显示空白而非0,可嵌套IFERROR:
=IFERROR(COUNTIFS('Database'!$B$2:$B$1000,S3,'Database'!$E$2:$E$1000,"Meet Expectation"),"")
方法2:使用SUMPRODUCT函数(兼容旧版Excel)
如果你的Excel版本不支持COUNTIFS(如Excel 2007及更早版本),可通过SUMPRODUCT实现相同逻辑:
=SUMPRODUCT(--('Database'!$B$2:$B$1000=S3),--('Database'!$E$2:$E$1000="Meet Expectation"))
公式中--的作用是将逻辑判断返回的TRUE/FALSE转换为1/0,通过相乘求和得到符合双条件的记录数。
原公式问题解析
你之前的公式存在两处核心问题:
- 循环引用风险:
COUNTIF('Database'!$E$2:$E$1000,AO3)中引用了公式所在的AO3单元格,会触发循环引用 - 语法逻辑混乱:错误混用
INDEX与MATCH函数,INDEX的参数格式不符合语法规范,导致公式无法正常运行
内容的提问来源于stack exchange,提问作者Nadisty
相关产品推荐
相关产品推荐

