答案1
对我来说这似乎很简单:
如果左边是 A 并且右边也是 A,则算 WO。
- 在每个用户下面添加一行:例如 John
- 第 3 行 Count John
- 公式:
=IF(AND(C2="WO",OFFSET(C2,0,-1)="A",OFFSET(C2,0,1)="A"),1,0)
和=COUNTIF(C3:AG3,"<>0")
两次缺勤之间可能会有连续两周的休息时间( A-WO-WO-A ),因此了解如何计算这种模式也会很有帮助。
这考虑了“连续”变量。我在本例中用另一行来解决这个问题。
- 为用户保留的行:即 John
- 在 John 下方插入行来计算 PATTERN。
- 在 John 下方插入另一行来计算连续模式。
数字2——参考上面的
新公式:模式计数
'=IF(OR(AND(G6="WO",OFFSET(G6,0,-1)="A",OFFSET(G6,0,1)="A"),AND(G6="WO",OFFSET(G6,0,1)="A",OFFSET(G6,2,0)="C")),1,0)
数字3——参考上面的
新公式:连续词
'=IF(OR(AND(D11="WO",OFFSET(D11,0,-1)="WO"),AND(D11="WO",OFFSET(D11,0,1)="WO")),"C",0)
最终公式
在咨询了楼主后,进一步分析,计算 A 之间的所有 WO如下:
使用的公式(参考上图):
Row_1=IF(OR(AND(D31="WO",OFFSET(D31,0,-1)="WO"),AND(D31="WO",OFFSET(D31,0,1)="WO")),IF(OFFSET(D31,2,-1)>0,OFFSET(D31,2,-1)+1,1),0)
Row_2=IF(OR(AND(M31="WO",OFFSET(M31,0,-1)="A",OFFSET(M31,0,1)="A"),AND(M31="WO",OFFSET(M31,0,1)="A",OFFSET(M31,2,0)>0)),IF(OFFSET(M31,2,0)>0,OFFSET(M31,2,0),1),0)
数数=SUM(C34:AG34)