![Excel 数据透视表值](https://linux22.com/image/1290855/Excel%20%E6%95%B0%E6%8D%AE%E9%80%8F%E8%A7%86%E8%A1%A8%E5%80%BC.png)
我正在尝试在 2007 Excel 中创建一个数据透视表,该表将显示中位数而不是平均值。基本上,我有一组大量数据,用于显示完成某项任务需要多少个月、完成的年份以及该任务的类别(类别 AD)。我需要能够计算每年每个类别(AD)的中位时间,以及按年份细分的 A 和 B 类别的合并中位数。数据透视表适用于平均值,但我不知道如何使用它来计算中位数。
作为替代方案,我也尝试使用条件公式,但无法找出“OR”的正确语法。我尝试创建的公式如下:
=MEDIAN(IF(OR(all!$A$1:$A$65000 = "A", all!$A$1:$A$65000 = "B"),IF(all!$E$1:$E$65000 =
"FY05", IF(all!$C$1:$C$65000 <> "",all!$C$1:$C$65000, ""), "")))
答案1
首先,数据透视表中没有内置的中位数计算方法。这种功能的缺失让我在过去的项目中付出了太多的努力,你简直不敢相信。
其次,您说得对;OR() 在数组公式中会做一些奇怪的事情。尝试以下方法来解决该问题:
=MEDIAN(IF(all!E1:E65000="FY05",IF(all!A1:A65000="A",all!C1:C65000,IF(all!A1:A65000="B",all!C1:C65000,"")),""))
确保将其作为数组公式输入。按 Ctrl+Shift+Enter 输入公式。