标量
一个整数值,如果找不到满足条件的行,则返回空白。
COUNTBLANK 可使用包含任何数据类型的列,只统计其中的空值和空单元格,
不对值为零 (0) 的单元格计数,因为零是数值,不是空值。但任何空字符串都将被视为空,并参与统计,即使用 ISBLANK 检测会返回 FALSE。
COUNTBLANK
从不返回 0。如果没有行或者没有空白,它总是返回空值。
尽管
COUNTBLANK
在语义上与下面的表达式等价,但它可能比基于
CALCULATE
的相应语法要慢。
-- COUNTBLANK 示例
COUNTBLANK ( 'Table'[Column] )
-- 具有相同语义的表达式 (用于非字符串格式的列可能更快):
CALCULATE (
COUNTROWS ( 'Table' ),
KEEPFILTERS ( ISBLANK ( 'Table'[Column] ) )
-- 具有相同语义的表达式 (用于字符串格式的列可能更快):
CALCULATE (
COUNTROWS ( 'Table' ),
KEEPFILTERS ( 'Table'[Value] = "" )
MSDN 文档:COUNTBLANK
DAX Guide:COUNTBLANK
COUNTBLANK 可使用包含任何数据类型的列,只统计其中的空值和空单元格,不对值为零 (0) 的单元格计数,因为零是数值,不是空值。但任何空字符串都将被视为空,并参与统计,即使用 ISBLANK 检测会返回 FALSE。
根据语义:这个地方是不是应该为:即使用 ISBLANK 检测会返回 TRUE ?
COUNTBLANK从不返回 0。如果没有行或者没有空白,它总是返回空值。——这个翻译在微软官方文档有区别:
如果没有要聚合的行,函数将返回空白。 但是,如果存在行,但没有一行符合指定的条件,函数则会返回 0。 如果找不到满足条件的行,Microsoft Excel 也会返回零。
换言之,如果 COUNTBLANK 函数未找到任何空白,则结果将为零,但如果没有要检查的行,则结果将为空白。