查找最近的时间戳以记录和绘制事件图表

Find nearest timestamps to log and chart events

点差sheet 为linked here。 spreadsheet 中最简单的部分我可以做,计算单个事件的持续时间。现在我希望 spreadsheet 在可能的情况下使用公式从同一个 sheet 上存在的数据计算扩展数据。

共享传播sheet 正在记录一个传感器,无论是在它触发时还是在它清除时都作为单个记录(有 2 个事件 - start/stop)。然后它计算警报的持续时间。我还想与同一 sheet 上的其他记录进行比较,动态填充每个单独事件的单元格。不幸的是,我不知道如何从其他记录编号中找到最近的时间戳。

我可以通过大量的排序和排序手动找到这些数字,但文件只能按事件记录编号排序,所以我需要公式帮助。

E2:

=IFERROR(TEXT(B2-B1, "[h]:mm:ss"))

F2:

=VLOOKUP(MAX(INDIRECT("B2:B"&ROW())),{INDIRECT("B2:B"&ROW()), INDIRECT("A2:A"&ROW())},2,0)

G2:

=IFERROR(TEXT(C2-C1, "[h]:mm:ss"))

H2:

=VLOOKUP(MAX(INDIRECT("C2:C"&ROW())),{INDIRECT("C2:C"&ROW()), INDIRECT("A2:A"&ROW())},2,0)

I2:

=TEXT(MAX(INDIRECT("B2:C"&ROW()))-B2, "[h]:mm:ss")

demo spreadsheet


C2:

=IFERROR(TEXT(B2-INDEX(SORT(FILTER(B:B, B:B<B2, B:B<>""),1,0),1,1), "[h]:mm:ss"))

D2:

=IFERROR(VLOOKUP(INDEX(SORT(FILTER(B:B, B:B<B2, B:B<>""),1,0),1,1), {B:B,A:A}, 2,0))