计算轮班的哪一部分落在时间跨度内

Calculating which part of shift that falls within timespan

我正在尝试制作一个公式来计算我的轮班中有多少属于另一个时间跨度(这会提供额外的轮班时间)

我知道我的班次有多长,只需要图中红色的时间跨度就可以了。

例如我在 15:00-23:00 之间工作,额外付款的时间跨度是 19:00-24:00

我的工作时间是 8 小时,其中 4 小时是额外的工资,但是有没有什么办法可以让公式给我这个,因为我将不得不在很多日期和时间跨度上这样做...

假设您已经拆分了时间(A 开始 Shift,D 结束 Extra Pay 等)并且时间不跨越午夜,那么:

=MIN(D1,B1)-MAX(C1,A1)

=B1-C1.