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

如何在Power Query中计算相邻行时间间隔并生成结果表

在Power Query里算行间时间间隔,生成目标表的操作方法

假设你的原始表有个时间列(比如叫「时间」),按下面步骤来:

1. 添加索引列

在Power Query编辑器里,选中时间列,点「添加列」选项卡 → 「索引列」→ 选「从0开始」(从1开始也行,后面公式对应调整索引逻辑即可)。

2. 提取下一行的时间

点「添加列」→ 「自定义列」,输入公式:

= try #"添加的索引"{[索引]+1}[时间] otherwise null

把新列命名为「下一行时间」。用try...otherwise是为了处理最后一行没有下一行的情况,直接返回null即可。

3. 计算时间间隔

再添加一个自定义列,命名为「持续时间」,输入公式:

= Duration.From([下一行时间] - [时间])

这个公式会直接算出当前行与下一行的时间差,输出标准的持续时间格式(比如00:00:00、09:16:00)。

4. 整理成目标格式

  • 筛选删除「持续时间」列为null的行(也就是最后一行,因为没有下一行就没有时间间隔)
  • 只保留「时间」和「持续时间」两列
  • 如果需要把持续时间改成h:mm的简化格式,右键「持续时间」列 → 「更改类型」→ 「自定义」,输入格式字符串hh:mm;或者添加自定义列转换格式:
= Text.From(Duration.Hours([持续时间])) & ":" & Text.PadStart(Text.From(Duration.Minutes([持续时间])), 2, "0")

最终效果示例

整理完成后会得到你需要的表结构:

5/4/2020 0:00 -> 第一个事件的持续时间
5/5/2020 9:16 -> 第二个事件的持续时间

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 07:18:20