You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power Query中将日期调整为YYWW格式(ISO周与ISO年)

在Power Query中实现日期转「2位ISO年份+2位ISO周数」格式

核心逻辑

和你Excel公式的逻辑完全匹配:先获取日期对应的ISO周年份(解决年初/年末日期的年份偏差问题),再提取ISO周数,最后将年份取后两位、周数补零为两位后拼接成4位字符串。

具体操作步骤

假设你的数据源中日期列名为日期,按以下步骤操作:

  1. 确保日期列为日期类型
    如果当前日期列是文本格式,先转换为标准日期类型:
= Table.TransformColumns(源, {{"日期", each Date.From(_), type date}})
  1. 添加自定义列生成目标格式
    插入自定义列,使用以下M语言公式:
= Text.End(Text.From(Date.YearOfWeek([日期], Day.Monday, 4)), 2) 
    & Text.PadStart(Text.From(Date.IsoWeekOfYear([日期])), 2, "0")

公式细节说明

  • Date.YearOfWeek([日期], Day.Monday, 4):返回该日期所在ISO周对应的年份,对应Excel公式中YEAR(A1+26-ISOWEEKNUM(A1))的逻辑,参数4表示以包含1月4日的周为当年第一周,完全符合ISO标准
  • Text.End(_, 2):提取年份字符串的最后两位
  • Date.IsoWeekOfYear([日期]):返回日期的ISO周数,直接对应Excel的ISOWEEKNUM函数
  • Text.PadStart(_, 2, "0"):将周数补零为两位(例如周数3会转为03)

示例验证

输入日期03.02.23(即2023年2月3日):

  • ISO周数为3,ISO年份为2023
  • 最终生成结果为2303,和Excel公式输出完全一致

内容的提问来源于stack exchange,提问作者Mari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 15:25:39