Powerpivot:每个人每个日期的最小值总和

时间:2015-07-22 19:49:17

标签: excel-2013 powerpivot dax

我有这样的PowerPivot表数据

Employee  |   Date   |  Status   |  TimeDifference
-------------------------------------------------------
User A    | 7/1/2015 | Available |  0.00645833333692281
User A    | 7/1/2015 | On Call   |  0.00343750000320142
User A    | 7/1/2015 | On Email  |  0.00215448978012365
User B    | 7/1/2015 | Available |  0.00315548987780541
User B    | 7/1/2015 | On Call   |  0.00421156548977899
User B    | 7/1/2015 | On Email  |  0.00511123354664788

我需要确定的是每个日期为每个用户发生的最小TimeDifference值。我不能简单地使用Min(TimeDifference)并依赖数据透视表来对其进行分割,因为我还需要所有这些用户/每日最小值的总和来确定平均值,并保持表汇总值准确。

我已经尝试了MinX和SumX的几个变体以及一个组合Employee和Date的列来生成一个不同的组,但是这些值没有正确显示。

对此的任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

下面的示例显示了具有两组值的pivottable。第一组是简单的Employee Minimium,它给出了不正确的总数。第二组显示一个考虑总数的员工最低要求。关键是要创建一个度量标识,确定您是否正在查看员工的单个值,如果不是,请根据提供每个Employee的单个实例的列应用SUMX。值函数对于此类分析非常有用。

enter image description here

[Employee Minimum]:=MIN(Table1[TimeDifference])

[Employee Minimum Fixed Total]:=if(HASONEVALUE(Table1[Employee]),[Employee Minimum],SUMX(VALUES(Table1[Employee]),[Employee Minimum]))

编辑:提供更多信息

如果您添加其他日期并将日期放在pivottable上,则总计将在日期分组中生效。但是,如果当前设置的是什么,Grand Total会忽略日期并给出每个员工的最低值总和。这是你想要它的工作方式,还是你需要其他东西呢?

enter image description here

进一步编辑:多层总计

好的,除了你的评论之外,你要求一个复杂的总计层次结构,因为每个级别都在寻找一组MINIMUMS的SUM,所以它可以实现,但你需要引入一个度量层次结构:

保持[员工最低]原样。然后,由于您的最低兴趣水平是日期,您需要一个计算出一个日期的最小值,或者如果您正在查看多个日期(因为您将在您的工作日内),则需要将最小值加起来:

[Employee Minimum Fixed Weekday]:=if(HASONEVALUE(Table1[Date]),[Employee Minimum],SUMX(VALUES(Table1[Date]),[Employee Minimum]))

现在您需要在工作日处理每个用户的最小值总和:

[Employee Minimum Fixed User]:=if(HASONEVALUE(Table1[Weekday]),[Employee Minimum Fixed Weekday],SUMX(VALUES(Table1[Weekday]),[Employee Minimum Fixed Weekday]))

最后在团队层面对总结应用相同的方法:

[Employee Minimum Fixed Team]:=if(HASONEVALUE(Table1[Employee]),[Employee Minimum Fixed User],SUMX(VALUES(Table1[Employee]),[Employee Minimum Fixed User]))

您提供的样本数据仅显示几个日期 - 每个工作日一个 - 并且我假设用户都在同一个团队中,因此很难说明不同测量的效果,但这是结果(并且我相信它可以与您的数据一起使用):

enter image description here

但是,我会警告说,在处理大型数据集时,这些计算中涉及的迭代级别会使这种情况变慢。

关于格式化:如果在定义度量时设置了小数位数,则无论在何处使用度量,它都将应用此格式:

enter image description here