DAX计数功能在某处犯错

时间:2017-09-01 15:21:52

标签: excel count powerpivot dax

文件: count.xlsx位于GitHub repository

软件: MS Excel 2016 Power Pivot

我知道EXCEL表格中有10,921行。

当我创建DAX时,Total_Incidents:=Count(Graffiti[CREATED_DATE])10,921。我计算CREATED_DATE,因为没有NULL值。

有三种状态,Open,Pending,Closed,计算如下

Total_Closed:=sumx(FILTER(Graffiti,Graffiti[STATUS]="Closed"),[Total_Incidents])

Total_Closed= 5354,< - 正确

但是,Total_Opened不正确

Total_Opened:=sumx(FILTER(Graffiti,Graffiti[STATUS]="Open"),[Total_Incidents])

Total_Opened= 4483 应该是4481

但Total_Pending是正确的

Total_Pending:=sumx(FILTER(Graffiti,Graffiti[STATUS]="Pending"),[Total_Incidents])

Total_Pending= 75,< - 正确

当我添加总计时,由于Total_Opened

,我又发生了2次事件

Total_Calc:=[Total_Closed]+[Total_Opened]+[Total_Pending]

Total_Calc= 10923 < - 不正确,应为10921

为什么Total_Opened出现差异?无法想象这一点。

enter image description here

1 个答案:

答案 0 :(得分:1)

我最初回答的是:

"我知道你说你计算CREATED_DATE是因为没有NULL值,但是你在CREATE_DATE列中检查了空白吗?我通过空白日期复制了你的问题。你可以有2个空白日期。

您可以使用COUNTBLANK(Graffiti[CREATED_DATE])检查是否有空白。"

然后我发现您在GitHub上有一个指向Excel文件的链接,所以......

我下载了它,我在你的约会中寻找空白 - 没有。

所以我添加了Total_Closed,Total_Opened,Total_Pending和Total_Calc的列。 (我使用了您的公式,但我在每个公式中使用了sumx而不是countx,所以我只能比较行数。)

Total_Incidents:=Count(Graffiti[CREATED_DATE])

Total_Closed:=countx(FILTER(Graffiti,Graffiti[STATUS]="Closed"),[Total_Incidents])

Total_Opened:=countx(FILTER(Graffiti,Graffiti[STATUS]="Open"),[Total_Incidents])

Total_Pending:=countx(FILTER(Graffiti,Graffiti[STATUS]="Pending"),[Total_Incidents])

Total_Calc:=[Total_Closed]+[Total_Opened]+[Total_Pending]

这是我得到的:

Total_Incidents:10921

Total_Closed:6365

Total_Opened:4481

Total_Pending:75

Total_Calc:10921

这些计数看起来是正确的。

我猜你已经弄明白并纠正了你的问题。