知道怎么简化这个方程吗?每个区域的标准(APAC、LATAM、EMEA、北美)各不相同(小时/日缩短)。
信不信由你,这曾经更长。以下是我最好的尝试:
按分组分列:
=IF(A2="","",
IF(WEEKDAY(B2,2)=6,"Weekend Case",
IF(AND(C2<>"APAC",WEEKDAY(B2,2)=7),"WeekendCase",
IF(AND(C2="APAC",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=3),AND(WEEKDAY(B2,2)=7,
HOUR(B2)<18))),"Weekend Case",
IF(AND(C2="North America",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=18),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<8))),"Weekend Case",
IF(AND(C2="EMEA",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=10),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<2))),"Weekend Case",
IF(AND(C2="LATAM",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=15),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<5))),"Weekend Case",
"Weekday")))))))逻辑:
如果A2 = Nothing:Nothing
所有区域:
If Sat:WEEKEND
北美,EMEA,LATAM
IF Sun:WEEKEND
APAC:
如果Friday After 3AM或Sunday Before 6PM:WEEKEND
北美:
如果Friday After 6PM或Monday Before 8AM:WEEKEND
EMEA:
如果Friday After 10AM或Monday Before 2AM:WEEKEND
LATAM:
如果Friday After 3PM或Monday Before 5AM:WEEKEND
其他:
WEEKDAY
每个区域的样本如下:

发布于 2018-07-05 22:58:32
如果您可以使用外部表进行查找,则应该能够简化它(并在需要时使更改变得更容易)。
查找表:

这些数字是星期一(col I)和星期五(col J)抵消的天数。也就是说,对于APAC,+6小时是=6/24日,+21小时是=21/24天。(请确保对此表使用公式,而不是使用四舍五入的数字)
然后,您可以使用以下公式:
=IF(AND(WEEKDAY(B2+VLOOKUP(C2,H$2:J$5,2))>=1,WEEKDAY(B2+VLOOKUP(C2,H$2:J$5,3))<=5),"Weekday","Weekend Case")我和你的样本得到了同样的结果。
发布于 2018-07-05 23:04:12
创建一个名为Schedule的参考单,并按以下方式加载它:
A B C
1 Region WE-start WE-end
2 APAC 503 718
3 EMEA 505 802
4 LATAM 515 805
5 North America 518 818我们值的格式是dhh,其中d=weekday和hh=hour。如果平日是星期天,我强迫它为8,以使随后的计算更容易。
下面的公式生成类型并更正EMEA类型。
=IF(AND(IF(WEEKDAY(B2)=1,700,0)+WEEKDAY(B2)*100+HOUR(B2)>=VLOOKUP(C2,Schedule!$A$2:$C$5,2), IF(WEEKDAY(B2)=1,700,0)+WEEKDAY(B2)*100+HOUR(B2)<VLOOKUP(C2,Schedule!$A$2:$C$5,3)),"Weekend Case","Weekday")https://stackoverflow.com/questions/51200345
复制相似问题