Expression.Error无法对文本数字应用&运算符,M代码拼接URL与年份报错如何解决
Expression.Error: We cannot apply operator & to types Text and Number
对应中文:表达式错误:无法对文本和数字类型使用&运算符
报错原因
拼接URL时使用的年份为数字类型,而站点URL属于文本类型,M语言的字符串拼接运算符&要求两侧操作数必须同为文本类型,直接跨类型拼接就会触发该错误。
解决方法
拼接前调用Text.From()函数将数字类型的年份转为文本即可,修改逻辑如下:
- 错误写法示例:
"https://示例站点地址/数据接口?year=" & 2024 - 正确写法示例:
"https://示例站点地址/数据接口?year=" & Text.From(2024)
如果需要修改年份后URL自动更新,建议将年份单独提取为变量,后续只需修改该变量值即可自动刷新所有关联的URL:
let // 后续修改年份直接调整该参数值即可,不用改动其他代码 目标年份 = 2024, 生成请求URL = "https://你的站点URL前缀" & Text.From(目标年份), 获取接口数据 = Web.Contents(生成请求URL) in 获取接口数据
相关截图
- 报错截图:

- 代码截图1:

- 代码截图2:

内容的提问来源于stack exchange,提问作者user17295743
相关产品推荐
相关产品推荐

