如果需要,计算工作时间减去午餐时间

Calculate working time subtracting lunch time if needed

我为包含我工作时间的分布sheet而苦恼。我在每一行中都有每个工作日的开始时间和结束时间。

示例sheet:

|    | A               | B      | C          |  
----------------------------------------------  
|1   |Start time       |End time|Total time  |  
|2   |7:00             |13:30   |6:00        |  
|3   |7:00             |10:00   |3:00        |  

Shared table

问题是总时间不应该考虑午餐时间。我想设置一个sheet,当总时间大于4小时时,会自动取出半小时的午饭时间。比如开始时间是7:00,结束时间是13:30,我想得到13:30-7:00也就是6:30减去0:30=6:00。但是,如果开始时间是7:00,结束时间是10:00,我想得到10:00-7:00,也就是3:00。我尝试了 =SUM(-(A2-B2)*24) 但没有成功。

预期输出为红色。我想使用公式获得这样的输出。

谢谢!!!!

要拖下的公式:

=mod(B2-A2;1)-if(mod(B2-A2;1)>time(4;0;0); time(0;30;0); 0) 

由于 mod() 函数,如果是过夜时间,此公式应处理 'negative' 小时。

或者在数组公式中:

=ArrayFormula(if(len(B2:B); mod(B2:B-A2:A;1) - if(mod(B2:B-A2:A;1)>time(4;0;0); time(0;30;0); 0);)) 

将输出列格式化为'duration'...