【问题标题】:Summing groups of rows together? DAX formula using PowerPivot?将多组行加在一起?使用 PowerPivot 的 DAX 公式?
【发布时间】:2014-12-01 20:27:11
【问题描述】:

我正在尝试汇总 PowerPivot 模型中的多行,但将它们分组:

例如,如果总共有 20 行,项目 A、B、C、D、E、F(5 个项目 - 每个项目 4 个条目。

是否可以加起来但分组?例如: 如果: 项目 1 5 小时 项目 1 5 小时 项目 1 6 小时 项目 1 3 小时 项目 1 5 小时 项目 2 5 小时 项目 2 5 小时 等等

是否可以使用 DAX(也许是 Summarize?)将它们相加但对其进行分组,以便结果返回为: 项目 1 = 24 小时(全部加起来 5+5+6+3+5)和 项目 2 = 10 小时(项目 2 加起来,5+5)

等等等等?

我正在查看 =SUMMARIZE 并遵循语法,但它总是会给我一个错误/无法按我的意愿工作。

【问题讨论】:

  • robromo,你能分享一些示例数据吗?
  • 您是否尝试在模型内的计算中将此作为计算的中间步骤?还是您只需要在报告中显示总和,以便在查询/表示层中使用它?
  • 你的数据结构是什么?假设它是 (ProjectName,Hours,...) 你不需要做任何事情。只需使用公式“Sum([Hours])”创建一个度量(为清楚起见,引用)。创建此度量后,将 ProjectName 添加到 Row 并将这个新创建的度量添加到值。

标签: excel excel-formula business-intelligence powerpivot dax


【解决方案1】:

您能否解释一下为什么需要通过 DAX 计算来执行此操作?如果您添加了一个简单的 =SUM() 计算,然后将 Project 添加到您的数据透视表中,那么每个计算的上下文将自动生成您正在寻找的答案。这是一个例子:

示例表

  • 表格列
    • 项目
    • 小时

表格中的样本数据

Project 1,5
Project 1,5
Project 1,6
Project 2,5
Project 2,5
Project 1,3
Project 1,5

计算字段TotalHours:=Sum([Hours])

数据透视表

值:TotalHours
行:项目(您也可以选择特定项目作为过滤器)

结果

Project 1: 24
Project 2: 10

在此示例中,由于使用 TotalHours 计算字段的每个单元格的上下文仅限于单个项目,因此您无需执行任何特殊操作即可将它们分组以获得您希望的结果。

当然 - 如果您尝试将这些计算用作中间步骤,那么这一切都是一个有争议的问题......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多