Bonjour, Mathieu
Avant de modifier une formule pour l'adapter à son cas, il faut au moins comprendre le but de chaque formule, cette formule par exemple.
La formule de Monique =SI(NB.SI(Cat;B$1)>LIGNE()-LIGNE(B$1)-1;LIGNE()-LIGNE(B$1);""), retourne une valeur incrémentée (1 puis 2 puis 3 puis 4...) en fonction du nombre de personne correspondant à la catégorie.
La formule modifiée =SI(NB.SI(Cat;F$4)>LIGNE()-LIGNE(F$4)-1;LIGNE()-LIGNE(F$4);"")
Je vais essayé de t'expliquer (en remplaçant les cellules nommées), les fonctions de la formule.
NB.SI retourne le nombre de données trouvées dans la plage du premier argument correspondant au critère du 2ème argument. Dans ton fichier il y a 2 CG et 1 CF. Pour cette fonction le signe égal n'est pas obligatoire, il est implicite.
NB.SI('classement general'!D
;"PG") ou NB.SI('classement general'!D
;A1)
Dans ton fichier exemple, PG n'a pas de correspondance !
LIGNE(), une feuille est composée de 65536 lignes et 255 colonnes, cette fonction retourne, si il n'y a pas d'argument le numéro de la ligne ou ce trouve la formule, tu l'as mis dans la cellule B2 donc 2. Avec un argument, retourne le numéro de la ligne de la référence de l'argument, ici F$4, donc retourne 4.
2-4 -> -2
Ce que tu aurais dû marquer
=SI(NB.SI('classement general'!D
;A$1)>LIGNE()-LIGNE(A$1)-1;LIGNE()-LIGNE(A$1);""). Cette fonction n'est pas à valider par Ctrl+shift+entrer
Dans la formule de la colonne I de la feuille classement =SI(D4="";"/";NB.SI(Cat;D4)-NB.SI(D$5
$98;D4)), je préférerais voir ceci =SI(D4="";"/";NB.SI(D$4
4;D4)).
Bonne journée.
@+Jean-Marie