Excel 根据条件计算持续时间

问题描述 投票:0回答:1

我想在 D 列中填写一个公式,根据 B 列上的代理来计算状态持续时间。

示例:我需要一个公式来计算特工 John 从上午 8 点到上午 11 点下一个状态休息 在单元格 D2 上的待命持续时间。然而,约翰特工的下一行是另一个特工的另一条记录。如果约翰的下一个状态位于第 5 行(上午 11 点休息)的另一个行,我如何计算他的持续时间?由于约翰特工从上午 8 点到上午 11 点待命,因此单元 D2 上的预期输出应为 3 小时。

谢谢你

excel time formula duration
1个回答
0
投票

来自 @Spectral Instance 的简短回答,但对于是否可以做得更快的问题有一个很长的答案。

这个想法是对数据进行一次排序,然后使用二分搜索。

公式:

=LET(colA,A1:A100000, colB,B1:B100000, 键,colB&TEXT(ROW(colB),"000000"), 键1,colB&TEXT(ROW(colB)+1,"000000"), 排序键,排序(键), sortA,SORTBY(colA,键), XLOOKUP(keys1,sortkeys,sortA,,1,2))

© www.soinside.com 2019 - 2024. All rights reserved.