Excel中查找账户并计算排除零值的关联成本平均值问题
解决方案
直接使用AVERAGEIFS函数(推荐)
AVERAGEIFS原生支持多条件求平均,能直接满足你的需求:匹配目标账户代码、排除成本列(B列)零值,若需指定地区(如伦敦)也可一并加入筛选条件。
假设:
- 当前汇总表的
A2单元格是待匹配的账户代码 - 成本数据存储在名为
成本数据表的工作表中:A列= 账户代码B列= 成本值C列= 地区标识(如伦敦)
对应公式如下:
=AVERAGEIFS('成本数据表'!B:B, '成本数据表'!A:A, A2, '成本数据表'!B:B, "<>0", '成本数据表'!C:C, "伦敦")
如果不需要地区筛选,仅匹配账户代码+排除零值,可简化为:
=AVERAGEIFS('成本数据表'!B:B, '成本数据表'!A:A, A2, '成本数据表'!B:B, "<>0")
SUMIFS/COUNTIFS组合的正确写法
如果坚持用求和+计数的方式计算平均,必须保证两个函数的筛选条件完全一致,否则会出现分子分母不匹配的错误。正确写法示例:
=SUMIFS('成本数据表'!B:B, '成本数据表'!A:A, A2, '成本数据表'!B:B, "<>0", '成本数据表'!C:C, "伦敦")/COUNTIFS('成本数据表'!A:A, A2, '成本数据表'!B:B, "<>0", '成本数据表'!C:C, "伦敦")
关键注意事项
- 若工作表名称包含空格或特殊字符,必须用单引号包裹(如
'成本数据表') - 排除零值用
"<>0"而非">0",避免遗漏可能存在的负成本数据 - 确保条件范围与求和/平均范围的行数完全对应,不要出现范围错位
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

