Excel数据透视表按月份分组求平均未计入缺失日期,如何修正?
解决Excel透视表空白单元格按0计算平均值的问题
嘿,这个问题我碰到过不少次——Excel透视表默认计算平均值时会直接忽略空白单元格,这就是你得到10而不是6的原因。好在不用修改原表格、不用装任何软件,用透视表自带的计算字段就能搞定,具体步骤如下:
- 选中你的数据透视表,切换到顶部菜单栏的「分析」选项卡(Excel 2013及以后版本),如果是旧版本找「选项」卡,然后点击「字段、项目和集」→「计算字段」。
- 在弹出的「插入计算字段」对话框里:
- 给新字段起个好记的名字,比如
XX_含0平均; - 在公式输入框里写:
=IF(ISBLANK(XX), 0, XX)(这里的XX要替换成你原数据里对应的字段名称,必须和透视表里的字段名完全一致); - 点击「添加」,再点「确定」。
- 给新字段起个好记的名字,比如
- 把刚才新建的
XX_含0平均字段拖到透视表的「值」区域,然后把它的汇总方式改成「平均值」(右键值区域→「值字段设置」→选择「平均值」)。
这样设置后,透视表就会把原来的空白单元格当作0来参与计算,按月份分组后就能得到你想要的(10+0+10+0+10)/5=6的结果了。
额外小提示
如果原数据里的“缺失”不是真正的空白,而是空格或者其他隐藏字符,可以把公式改成=IF(TRIM(XX)="", 0, XX),这样能兼容更多情况。
内容的提问来源于stack exchange,提问作者RiC




