Bonsoir Fred, Bonsoir Monique,
Fred, en fait c'est dans l'exemple de Monique que cette fonction est utilisée, mais je peux te l'expliquer quand même.
L'idée est de définir la liste des formations à partir de la feuille Elèves donc de déterminer combien y-a-t-il de formations différentes.
La fonction Decaler part de la première cellule contenant une formation (B1) et sur un nombre de colonnes égal au nombre de formations.
=Somme(1/NB.SI(plage;plage) est une formule connue qui permet de définir le nombre de valeurs différentes dans une plage.
* NB.SI(plage;plage) va compter pour chaque valeur de la plage, le nombre de fois où elle est présente dans cette même plage. Si une valeur est présente 4 fois, chaque fois que la valeur se présente NB.SI va compter 4.
Exemple: soit la liste A,B,A,C,B,A,A
NB.SI(plage;plage) donnera comme résultat:
4,2,4,1,2,4,4
1/NB.SI(plage;plage) va calculer 1/nombre de présence ce qui donnera:
1/4,1/2,1/4,1/1,1/2,1/4,1/4 donc si une valeur est présente 4 fois, on trouvera 4 fois 1/4 et pour n fois, n fois 1/n
La somme de n fois 1/n étant égal à 1, Somme(1/NB.SI....) va compter 1 pour chaque valeur présente n fois dans la plage ce qui donne le nombre de valeurs différentes.
Ce calcul pose quelquefois des problèmes d'arrondis car si 4 * 0,25 donne bien 1, si une valeur est présente 7 fois, on aura 7 * 0,142857142 ce qui donne à peu près 1 (0,999999994). et c'est pareil pour 3 fois, 11 fois ...
J'espère avoir été à peu près clair, mais n'hésite pas à demander d'autres explications complémentaires si c'est nécessaire.
J'ajoute un fichier exemple à partir de la feuille elèves ou chaque étape du calcul est détaillée séparément, c'est la meilleure façon de comprendre.
@+
Gael [file name=Formule.zip size=17529]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Formule.zip[/file]
Message édité par: Gael, à: 16/11/2005 20:54
Message édité par: Gael, à: 16/11/2005 22:42