Power BI添加动态日期差列报错:'YEAR'未识别,求解决方案
Power BI计算入职时长自定义列报错解决
问题原因
你使用的YEAR()是Excel函数,但Power Query的M语言中没有这个函数,且直接用年份相减的逻辑不符合Duration类型的计算要求,导致报错。
正确代码方案
方案1:获取包含年/月/日的时长记录
如果需要得到包含Years、Months、Days等字段的结构化记录,使用以下代码:
= Duration.ToRecord(Date.From(DateTime.LocalNow()) - [#"Date d'embauche"])
Date.From(DateTime.LocalNow()):获取当前日期(忽略时间部分)- 与
#"Date d'embauche"(入职日期列)直接相减得到Duration类型的时间差值 Duration.ToRecord()将差值转换为包含多维度时长的记录
方案2:直接获取总入职年数
如果只需要计算总入职年数(带小数,例如3.2年),可以用:
= Duration.TotalYears(Date.From(DateTime.LocalNow()) - [#"Date d'embauche"])
如果需要取整数年,添加Number.RoundDown()处理:
= Number.RoundDown(Duration.TotalYears(Date.From(DateTime.LocalNow()) - [#"Date d'embauche"]))
内容的提问来源于stack exchange,提问作者Nizar El aouina
相关产品推荐
相关产品推荐

