如何创建含三个条件的Calculated Column识别Power BI仪表板缺失值?
修复Power BI缺失值识别的DAX计算列
原公式的问题
- 语法冗余:重复写了
|| Dataset[Reason] = BLANK(),属于无效逻辑判断 - 引用错误:错误引用了
Combined[Origin](应为Dataset[Origin])、Dataset[Matter Origin](应为Dataset[Origin]) - 逻辑错误:嵌套
IF只能返回单个结果,无法同时展示多个缺失项;用&&连接文本不符合DAX语法,文本连接需用&
正确DAX公式(两种实现)
方法1:灵活扩展的动态筛选法
适合后续可能新增字段的场景,通过筛选字段名生成缺失项列表:
Missing Values = VAR MissingItems = FILTER( {"Billing", "Reason", "Origin"}, ISBLANK(Dataset[EARLIER(Value())]) || Dataset[EARLIER(Value())] = "" ) RETURN IF( COUNTROWS(MissingItems) > 0, CONCATENATEX(MissingItems, "Missing " & Value(), ", "), "No missing values" )
方法2:直接判断的静态拼接法
针对固定三个字段的场景,逻辑更直观:
Missing Values = VAR BillingMissing = IF(ISBLANK(Dataset[Billing]) || Dataset[Billing] = "", "Missing Billing", "") VAR ReasonMissing = IF(ISBLANK(Dataset[Reason]) || Dataset[Reason] = "", "Missing Reason", "") VAR OriginMissing = IF(ISBLANK(Dataset[Origin]) || Dataset[Origin] = "", "Missing Origin", "") VAR CombinedText = TRIM(BillingMissing & ", " & ReasonMissing & ", " & OriginMissing) RETURN IF(CombinedText = "", "No missing values", SUBSTITUTE(CombinedText, ", , ", ", "))
使用说明
将上述任一公式添加为Dataset表的计算列后,即可在表格、卡片图等可视化组件中展示每行的缺失字段信息,匹配参考仪表板的展示需求。
内容的提问来源于stack exchange,提问作者Susan
相关产品推荐
相关产品推荐

