工作表名称:条件格式(第 2 部分):
Explanation:
问题:我想要一个条件格式公式,该公式对于每个“FIN YEAR”中每个“STUDIO”的第一个缺失数字之后的所有数字都给出 TRUE。 (如上图所示)
注意:
每个“STUDIO”的每个“FIN YEAR”的数字从 1 开始。
数字可以重复任意次数。
每个输入都是随机的,任何列都没有顺序。
一个单元格可以有多个值。
表:
工作室 | 新年 | 数字 | (输出)条件格式化 |
---|---|---|---|
A | X-X | 3,4 | |
A | X-X | 5,8 | 正确 |
A | X-X | 1 | |
A | O-O | 8 | 正确 |
A | X-X | 6 | |
B | X-X | 1 | |
B | X-X | 2 | |
C | X-X | 1 | |
B | O-O | 4 | 正确 |
B | X-X | 3 | |
A | X-X | 2 | 正确 |
C | X-X | 2 | |
C | X-X | 3 | |
A | O-O | 1 | |
A | O-O | 2 | |
A | O-O | 2 | |
A | O-O | 4 | 正确 |
C | O-O | 1 | |
C | O-O | 1 |
请不要将此标记为第 1 部分的重复问题,因为我被要求为此第 2 部分创建一个单独的问题。
这是一种方法,您可以测试一下:
🌀公式应用于列_D,然后将条件格式应用于列 A、B、C,因为直接用作条件格式规则时,此类计算量大的公式会极大地减慢工作表的速度。
=let(Ξ,map(let(z,sort(unique(A2:A&B2:B)),filter(z,z<>"")),lambda(Λ,hstack(Λ,let(x,split(join(",",filter(C:C,A:A&B:B=Λ)),","),y,sequence(1,max(x)),ifna(min(filter(y,isna(xmatch(y,x))))))))),
map(A2:A,B2:B,C2:C,lambda(a,b,c,if(counta({a,b,c})<>3,,let(Σ,index(xmatch(vlookup(a&b,filter(Ξ,index(Ξ,,2)<>""),2,),split(c,","),1)),if(isnumber(Σ),true,))))))