如何用Power Query将含假期起止日期的表格转换为假期日期列表
用Power Query将假期起止日期转换为每日日期列表的通用方案
假设你有一张包含假期名称、假期开始日期、假期结束日期的表格,需要把每个假期的起止区间拆分成单天记录,生成按日期排列的假期列表,以下是Power Query的通用解决步骤:
导入数据到Power Query
- 打开Excel,选中目标数据区域,点击「数据」选项卡 → 「从表格/区域」,进入Power Query编辑器。
添加自定义列生成日期序列
- 点击「添加列」选项卡 → 「自定义列」,输入以下M语言公式:
公式说明:以当前行的假期开始日期为起点,计算起止日期的总天数(+1是为了包含结束日期当天),按每天递增的规则生成完整日期序列。= List.Dates([开始日期], Duration.Days([结束日期]-[开始日期])+1, #duration(1,0,0,0))
- 点击「添加列」选项卡 → 「自定义列」,输入以下M语言公式:
展开自定义列到新行
- 点击自定义列右侧的展开箭头图标,选择「展开到新行」,此时每个日期会单独成为一行记录,对应所属的假期名称。
整理最终表格结构
- 按需删除原有的「开始日期」「结束日期」列,将自定义列重命名为「假期日期」,调整列顺序至符合需求。
加载数据回Excel
- 点击「主页」选项卡 → 「关闭并上载」,将处理后的日期列表加载回Excel。
内容的提问来源于stack exchange,提问作者Gerreth Schliep
相关产品推荐
相关产品推荐

