Excel PowerPivot DAX 计算字段

标签 excel excel-formula powerpivot dax

我认为我遇到了一个相对简单的问题,只是无法使其正常工作。首先我要说的是我是 DAX 新手。

考虑以下 PowerPivot 数据模型:

enter image description here

它由一个销售记录表和一个“每日费用”表组成,该表连接到一个日期查找表。 “每日费用”表存储一个值,该值代表每天运行特定交易地点的平均成本。

生成一个数据透视表非常容易,它可以为我提供每个[插入日期期间] 每家商店的总销售额。我想要的是一个 DAX 公式,可以计算每家商店每天的利润 - 即。总销售额减去每日费用(运营成本):

enter image description here

理论上,这应该很容易,但我对如何利用 DAX 行上下文感到困惑。

失败的尝试:

利润:=CALCULATE(SUM(SalesInformation[SaleAmount] - DailyStoreExpenses[DailyExpense]))

利润:=CALCULATE(SUM(SalesInformation[SaleAmount] - DailyStoreExpenses[DailyExpense]), DailyStoreExpenses[StoreLocation])

利润:=SUM(销售信息[销售金额] - RELATED(DailyStoreExpenses[DailyExpense])

等等

感谢任何帮助。

最佳答案

Zam,不幸的是,你的失败尝试还没有结束:-)

答案和最佳实践是使用名为“Stores”的第四个表,其中每个商店包含唯一的记录 - 这不仅对于汇集两个事实表中的数据很有用,而且还可以包含有关商店的附加信息您可以将其用于替代聚合,例如格式、位置等

您应该在每个 Sales 和 Expenses 表与 Store 表之间创建关系,然后使用如下度量:

[Sales] = SUM(SalesInformation[SaleAmount])
[Expenses] = SUM(DailyStoreExpenses[DailyExpense])
[Profit] = [Sales] - [Expenses]

如果您将日期和商店表正确链接到两个“事实”表(即销售和费用),那么整个事情应该很好地对齐。

编辑:

如果您想将其汇总为几周、几年等,并且费用和日历之间没有任何关系,那么您需要相应地调整您的费用衡量标准:

[Expenses] = SUM(DailyStoreExpenses[DailyExpense]) * COUNTROWS(DateTable)

这基本上需要特定过滤器上下文中的天数并将费用乘以它。

关于Excel PowerPivot DAX 计算字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24444176/

相关文章:

excel - 恢复 vlookup 语句的单元格地址

python - 在 openpyxl 中对单元格集合进行排序

excel - 使用excel公式删除多个子字符串的匹配字符串

excel - Powerpivot - 从单个事实表创建比率

excel - 在线共享和保护 Excel 文档(使用 Powerpivot),无需 Sharepoint 和 Power BI?

基于每个表两列的 PowerPivot 关系

excel - SUMIF 匹配文本添加值

Excel:通过评估其他列中的数据与第三列中的匹配数据来编辑列数据

excel - 如何跟踪谁使用我的 Excel 电子表格?

Excel 2016 用多个空格分割字符串