Cela mérite quand même une explication !
en colonne ici (J2)
=query(unique(arrayformula({A$2:A,year(B$2:B)&"~"&month(B$2:B),C$2:C})),"select Col2 where Col1 = '"&E2&"' and Col3 = '"&F2&"' ")
et en ligne (K1)
=transpose(query((arrayformula({A$2:A,year(B$2:B)&"~"&month(B$2:B),C$2:C})),"select Col2 where Col1 = '"&E2&"' and Col3 = '"&F2&"' "))
que je compare avec des 1 et des 0 dans cette matrice si égalité, donc en K2
je compte ensuite le nombre de 1 par ligne avec une multiplication matricielle de cette matrice et une colonne de 6 fois 1
6 fois étant le nombre de colonnes de ma table de correspondance ci-dessus, donc =sequence(6,1,1,0) ou en R2 ici
=sequence(counta(query((arrayformula({A$2:A,year(B$2:B)&"~"&month(B$2:B),C$2:C})),"select Col2 where Col1 = '"&E2&"' and Col3 = '"&F2&"' ")),1,1,0)
ce qui donne
il suffit ensuite de compter le nombre de fois où le résultat par ligne est supérieur à 1