[英]Calculated field totals not correct in PowerPivot
我有一個帶有大量切片器的基本數據集,大致如下所示:
Hours SpreadPerHr Spread
5.00 5.00 25.00
10.00 2.00 20.00
8.00 10.00 80.00
Spread是Spread = Hours * SpreadPerHour的計算值。 問題是,這些列的總數也遵循這個公式,所以它看起來像這樣:
Hours SpreadPerHr Spread
5.00 5.00 25.00
10.00 2.00 20.00
8.00 10.00 80.00
Total: 23.00 17.00 391.00
雖然小時總計很好,但SpreadPerHour是動態的,所以Spread也是如此。 說Total Spread = Total Hours * Total SpreadPerHour是不正確的。 總計應該是:
Total: 23.00 17.00 125.00
有沒有辦法讓我可以按小時計算excel離開總數,但是將Spread列加總而不是乘以總數?
以下是我認為您在Power Pivot模型中的內容:
您有一個Spread的計算度量,我將其標記為SpreadCalc1
。 這個問題是它在進行乘法之前進行聚合。 您需要在逐行的基礎上執行此操作,然后進行聚合。 因此,您需要創建計算列,然后對該列求和,而不是計算出的度量。
我標記為SpreadCalc
的列具有公式=[Hours] * [SpreadPerHr]
。 我稱之為Spread
的計算度量就是Sum([SpreadCalc])
。 你可以看到總數是125而不是391。
我知道現在這可能有點多余,但我建議采用略有不同的方法。
在“小”表中添加計算列很好,但它可能會導致大型數據庫出現嚴重的性能問題。
所以為了解決你的問題,我認為“正確”的方法是使用SUMX功能。
它專門為每一行計算表達式,這正是您所需要的。 就性能而言,它是智能的(無需添加計算列或執行任何源數據操作)。
如果您使用此公式(更正表/度量的名稱),您應該得到所需的結果:
SUMX(YourTable, [Sum Hour] * [Sum SpreadPerHr])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.