利用ISBLANK()判断空值和直接用双引号判断空格的不同结果

最近遇到一个例子,需要判断某列(’个人学习报表汇总'[课程名称])是否有空值。我最初用【’个人学习报表汇总'[课程名称])=””】来判断,觉得不够高大上,浏览DAX函数,发现有个ISBLANK()函数能够判断是否有空值,于是用它做了个试验:这个是ISBLANK()版本:

Test_Isblank=CALCULATE(COUNTA('个人学习报表汇总'[课程名称]),ISBLANK('个人学习报表汇总'[课程名称])=FALSE())

这个是双引号版本:

注册课程数=CALCULATE(COUNTA('个人学习报表汇总'[课程名称]),'个人学习报表汇总'[课程名称]<>"")

最后的结果如下:
利用ISBLANK()判断空值和直接用双引号判断空格的不同结果_第1张图片

可以看到,双引号版本是更完美的结果——它过滤掉了有空值的单元格计数。而包含ISBLANK()的版本将空值(本例中,空值没有日期信息)也进行统计了,但这并不是我想要的。在非空值部分,计数毫无问题。
为什么会这样?我目前还不得而知。
另,在这个例子中,将双引号替换为BLANK()也ok的。

你可能感兴趣的:(利用ISBLANK()判断空值和直接用双引号判断空格的不同结果)