Power BI新手求助:如何将列值按类别合并为单行列表(表格视觉)
解决Power BI表格合并同组Details列的问题
问题场景
当前表格视觉中,同一Category/Serial No/Location组合下的Details列存在多行重复,需要将同组的Details值合并为单行列表。
解决方案:使用CONCATENATEX创建度量值
你之前尝试的CONCATENATEX是正确方向,问题大概率出在筛选上下文设置上。以下是正确实现步骤:
新建度量值
进入Power BI的「建模」选项卡,点击「新建度量值」,输入以下公式(替换你的表名为实际数据表名称):合并Details = CONCATENATEX( ALLEXCEPT('你的表名', '你的表名'[Category], '你的表名'[Serial No], '你的表名'[Location]), '你的表名'[Details], ", " // 可自定义分隔符,比如换行符用UNICHAR(10) )ALLEXCEPT用于保留Category/Serial No/Location的分组上下文,确保只合并当前组内的Details值- 第三个参数是分隔符,可根据需求替换(比如用
UNICHAR(10)实现换行显示)
调整表格视觉
- 从表格中移除原有的
Details列 - 将新建的「合并Details」度量值添加到表格的「值」区域
- 确保
Category、Serial No、Location仍保留在表格的「行」区域
- 从表格中移除原有的
可选:使用计算列实现(适合数据模型层面预合并)
如果需要在数据模型中直接生成合并后的列,可以创建计算列:
合并Details列 = CONCATENATEX( FILTER( '你的表名', '你的表名'[Category] = EARLIER('你的表名'[Category]) && '你的表名'[Serial No] = EARLIER('你的表名'[Serial No]) && '你的表名'[Location] = EARLIER('你的表名'[Location]) ), '你的表名'[Details], ", " )
注意:计算列会增加数据模型的存储体积,报表层面优先推荐使用度量值。
内容的提问来源于stack exchange,提问作者Sandeep
相关产品推荐
相关产品推荐

