Power BI分页报表字段值截取:移除固定长度后缀表达式求助
Power BI分页报表截取姓名字段的正确表达式方案
针对你的需求,这里提供两种可靠的表达式方案:
方案1:基于最后一个空格截取(推荐,适配姓名含空格的场景)
因为姓名可能包含空格(比如示例中的"Sarah Lipton"),而数字前的空格是姓名和数字的分界,所以用InStrRev函数从右往左查找最后一个空格的位置,再截取左侧内容:
=Left(Fields!Personnel.Value, InStrRev(Fields!Personnel.Value, " ") - 1)
- 原理:
InStrRev返回最后一个空格的索引位置,减1后得到姓名的最后一位字符位置,Left函数截取从开头到该位置的内容。
方案2:基于固定长度截取(仅当数字长度固定为10位时适用)
如果确认所有记录的数字都是10位,且数字前必有一个空格,可直接通过总长度减去11(10位数字+1个空格)来截取:
=Left(Fields!Personnel.Value, Len(Fields!Personnel.Value) - 11)
你之前表达式的问题
你用InStr(Fields!Personnel.Value, "4")来定位的方式不可靠:一是数字不一定以"4"开头,二是如果姓名中包含"4",会导致截取位置错误。
内容的提问来源于stack exchange,提问作者Saron
相关产品推荐
相关产品推荐

