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

如何在Excel的M语言(PowerQuery)中生成B至C列日期区间的所有日期

解决Power Query生成日期区间序列的问题

嘿,我来帮你搞定这个日期生成的需求!用Power Query完全可以轻松实现,不用依赖Excel工作表函数,下面是一步步的具体操作:

步骤1:确保数据是日期类型

首先要确认你的B列和C列已经是日期类型(不是文本)。如果还不是,先在Power Query编辑器里转换:

// 替换YourOriginalTable为你的源表名,Column B/C为实际列名
Source = Table.TransformColumns(YourOriginalTable, {
    {"Column B", each Date.From(_), type date},
    {"Column C", each Date.From(_), type date}
})

步骤2:获取起始和结束日期

我们需要从B列取最早的日期,从C列取最晚的日期作为区间边界:

StartDate = List.Min(Table.Column(Source, "Column B")),
EndDate = List.Max(Table.Column(Source, "Column C"))

步骤3:生成完整的日期序列

用List.Dates函数生成从起始到结束的所有日期(包含首尾):

// 计算日期总天数,+1是为了包含结束日期
DateCount = Duration.Days(EndDate - StartDate) + 1,
// 生成日期列表,每天间隔1天
DateList = List.Dates(StartDate, DateCount, #duration(1, 0, 0, 0))

步骤4:转成表格并格式化日期

把日期列表转换成表格,再将日期格式改成你要的1.1.2018样式:

// 转成表格,列名设为"日期"
DateTable = Table.FromList(DateList, Splitter.SplitByNothing(), {"日期"}),
// 格式化日期为d.M.yyyy格式(比如1.1.2018)
FormattedDateTable = Table.TransformColumns(DateTable, {{"日期", each Date.ToText(_, "d.M.yyyy"), type text}})

完整的M代码示例

把上面的步骤整合起来,完整的查询代码大概是这样的(记得替换成你自己的表名和列名):

let
    // 加载源数据
    Source = Excel.CurrentWorkbook(){[Name="YourOriginalTableName"]}[Content],
    // 转换B、C列为日期类型(如果需要的话)
    ConvertToDate = Table.TransformColumns(Source, {
        {"Column B", each Date.From(_), type date},
        {"Column C", each Date.From(_), type date}
    }),
    // 获取起始和结束日期
    StartDate = List.Min(Table.Column(ConvertToDate, "Column B")),
    EndDate = List.Max(Table.Column(ConvertToDate, "Column C")),
    // 生成日期序列
    DateCount = Duration.Days(EndDate - StartDate) + 1,
    DateList = List.Dates(StartDate, DateCount, #duration(1, 0, 0, 0)),
    // 转成表格并格式化
    DateTable = Table.FromList(DateList, Splitter.SplitByNothing(), {"日期"}),
    FormattedDateTable = Table.TransformColumns(DateTable, {{"日期", each Date.ToText(_, "d.M.yyyy"), type text}})
in
    FormattedDateTable

这样操作后,你就能得到一个全新的表,里面包含了B列最早日期到C列最晚日期之间的所有日期,而且格式完全符合你的要求~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:37:13