报告在Excel中估计不佳的用户

时间:2010-10-01 19:52:16

标签: excel reporting pivot-table

我有一个电子表格,对应于用户的条目,他们的估计和实际值(例如:特定项目的小时数 - 再次,这只是一个例子),我们可以用CSV代表:

User,Estimate,Actual
"User 1",5,5
"User 1",7,7
"User 2",3,3
"User 2",9,8
"User 3",6,7
"User 3",8,7

我正在尝试为这些用户构建报告,以便快速查看哪些用户低估或高估了,因此我创建了一个数据透视表。但是,我无法弄清楚如何简单地显示用户是否在某个时候低估了。我尝试创建一个像=IF(Estimate > Actual, 1, 0)这样的计算字段,但总结一下,然后比较EstimateActual列,并告诉我“用户3”不会过度/低估。

如果不向我的数据添加其他字段,我该如何完成此操作?

类似的SQL伪查询将是:

SELECT DISTINCT al.User,
(SELECT COUNT(*) FROM ActivityLog AS l2 WHERE l2.User = al.User AND l2.Estimate > l2.Actual) AS Overestimates
FROM ActivityLog AS al

编辑:

我还在研究这个问题,目前已经在一些单元格中创建了静态用户列表,并为他们提供了数组公式:{=SUM(IF((A$2:A20 = F6)*(B$2:B20 > C$2:C20), 1, 0))}{=SUM(IF((A$2:A20 = F6)*(B$2:B20 < C$2:C20), 1, 0))}(如果我有的话) F6)中的用户名。

主要是,我想这样做,用户列表可以从主数据中动态填充。

3 个答案:

答案 0 :(得分:1)

数据透视表中的计算字段很糟糕。我会摆脱数据透视表,并用公式做。在H15中启动一个唯一的用户列表,并在I15中输入

{=MAX(($A$2:$A$7=H16)*($B$2:$B$7-$C$2:$C$7<>0))}
输入了

数组。如果它们超过或低于估计值,则返回1,如果它们从未这样做,则返回零。缺点是您不能像数据透视表那样“刷新”它,因此您必须确保您的唯一用户列表始终准确。

如果这有太大的缺点,我认为您需要在源数据中添加一列。具体地

=ABS(B2-C2)

并将其添加到数据透视表中。它将显示零从不超过/低于,否则为非零。

答案 1 :(得分:0)

为实际估算添加一列

然后汇总min max和average的值。 (或stddev)

答案 2 :(得分:0)

您知道您应该确保估算值都在同一范围内吗?可以更好地估计较小的数字(当谈论小时时)。

相关问题