我在使用 excel averageif 函数时遇到一个问题:我有一个工作簿,其中包含 12 个不同工作表(名为 Jan、Feb、...、Dec)中的月度信息(以数值形式存储)。在每个工作表中,我计算总和,例如,=SUM(B1:B100)
并将其存储在单元格 A1 中。
我创建了一个概览工作表,取每个月 A1 值的平均值,并且我想排除那些为 0 的值。
我使用公式
=AVERAGEIF(Jan:Dec!A1, ">0")
但是,我#VALUE!
使用了这个averageif函数。
这个问题的原因是什么?AVERAGEIF 的范围不能是另一个 SUM 函数的结果吗?
答案1
您不能在 Averageif 或 SumIf 中使用 3D 引用。您的 3D 引用是 Jan:Dec!A1,也就是说,您引用的不是单个工作表上的范围(这将是 2D),而是多个工作表上的范围。
请参阅以下链接以获取可使用 3D 参考的函数列表。
创建 3D 参考,Microsoft 帮助
您必须想出不同的方法。以上回答了您的具体问题。如果您愿意,我可以在评论中添加建议。
答案2
我会将所有数据合并到一张工作表上的一个表格中。如果需要,我会添加月份/日期列来标识行。
这样,您的公式就变得简单了,任何其他类型的分析或报告也变得简单了。您不必担心保持多张工作表同步。