如何计算多表格中指定单元格不为0的平均值

如何计算多表格中指定单元格不为0的平均值我要计算30个不同Sheet表格中指定单元格为B37的平均值,但公式=AVERAGE('15:14'!B37:B37)会计算到数值为0的值,请大侠帮忙。还需要写入什么判断才能实现?[使用=AVERAGEIF('15:14'!B37:B37,"<>0")不能实现]

如果在函数公式都难以解决的情况下,不妨使用VBA程序来处理,或许会变得简单容易一些。下图为求解不同工作表里边同一单元格平均值的VBA程序代码:

如果不想手动录入代码程序,可以到百度经验《使用VBA求解不同工作表的平均值》里边复制代码,这里就不粘贴代码了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-05
先求和 然后计算不为0,不为空的个数,然后求平均数。
第2个回答  2018-06-05
假设要统计的30个工作表名为Sheet1~Sheet30
=SUM(Sheet1:Sheet30!B37)/COUNT(0/N(INDIRECT("Sheet"&ROW(1:30)&"!B37")))
数组公式追问

大神,公式成立,但是返回值还是求和的数值。
我想要的结果是:
比如Sheet1的B37数值是100,Sheet2的数值是100,其余sheet的数值是0,通过公式得到Sheet1至Sheet30的B37的平均值是100,请再看看,谢谢

本回答被网友采纳
相似回答