Excel 用于识别唯一列组合金额的DAX度量

Excel 用于识别唯一列组合金额的DAX度量,excel,dax,powerpivot,Excel,Dax,Powerpivot,我的数据包含重复(故意的),其中一个项目可能有多个类别 我需要创建DAX度量值(最后一列),只有当distCount(每个项目的类别的不同计数)列等于1时,才会使用该值-distCount不在数据集中,并且应该作为度量值的一部分进行计算 最后两列基本上是预期结果。例如,项目p2在整个数据集中只有一个类别(c1),但例如项目p5有三个唯一的类别(c1、c4、c2)。[date]只是为了说明数据集可能要大得多(列数和行数) 我的尝试完全错误(请不要考虑): 这个怎么样 measure = IF (

我的数据包含重复(故意的),其中一个项目可能有多个类别

我需要创建DAX度量值(最后一列),只有当distCount(每个项目的类别的不同计数)列等于1时,才会使用该值-distCount不在数据集中,并且应该作为度量值的一部分进行计算

最后两列基本上是预期结果。例如,项目p2在整个数据集中只有一个类别(c1),但例如项目p5有三个唯一的类别(c1、c4、c2)。[date]只是为了说明数据集可能要大得多(列数和行数)

我的尝试完全错误(请不要考虑):

这个怎么样

measure =
IF (
    CALCULATE (
        COUNTROWS ( data ),
        ALLEXCEPT ( data, data[project], data[category] )
    ) = 1,
    SUM ( data[amount] ),
    0
)

这对数据表中
项目
类别
匹配当前筛选上下文的行进行计数,并在计数为单数时求和
金额

IF(E2=1,D2,“”),但度量值计算不是“1-distcount”,因为1-12.5是-11.5,这不是度量值列中显示的值。所以不清楚。谢谢你,亚历克西斯,但我只是不确定我犯了什么错误:看起来很对,因为第8-14行与第1-7行(日期除外)是重复的。要获得您拥有的
distCount
数字,请在
ALLEXCEPT
中使用
data[date]
而不是
data[category]
。我想你们的代码把我弄糊涂了,你们想要区分的维度是什么。我承认代码是bs,很抱歉。但最后两列基本上是预期结果。例如,项目p2在整个数据集中只有一个类别(c1),但例如项目p5有三个唯一的类别(c1、c4、c2)。数据集可能有十个if列,但我只对这两个列感兴趣。我将尝试重新表述我的问题。您是否尝试过我的建议,使用
ALLEXCEPT(数据,数据[project],数据[date])
=IF(
CALCULATE(
COUNTROWS(data),
FILTER(data,
CONCATENATE(data[category],data[project])=
DISTINCT(CONCATENATE(data[category],data[project]))
))>1,SUM(0),SUM(data[amount]))
measure =
IF (
    CALCULATE (
        COUNTROWS ( data ),
        ALLEXCEPT ( data, data[project], data[category] )
    ) = 1,
    SUM ( data[amount] ),
    0
)