| ||||||||
Petit astucien | bonjour en travaillant sur un tableau excel(2003) pour calculer la moyenne des élèves, j'utilise la fonction sommeprod pour que la note de chaque matière soit multipliée par le coéffient lui correspondant. la moyenne se calcule en divisant le total des notes par la somme des coéfficients. tout se passe bien s'il y a une valeur numérique.le problème, quand je mets d dans la case de l'éducation physique(EPS) pour un élève qui en est dispensé, un message d'erreur s'affiche. je voudrais, dans ce cas que seules les valeurs numériques soient totalisées,et en calculant la moyenne le coéfficient de EPS ne doit pas être pris en considération. merci | |||||||
Publicité | ||||||||
| ||||||||
Astucien | Bonjour, Excel travaille en général sur des valeurs numériques. D n'est pas numérique : il faudrait trouver un code numérique ou une valeur improbable (9999) qui ne perturbe pas les notations (valeur négative par exemple) et qui soit détectable pour l'ignorer ensuite car dispensé n'est pas zéro. Cordialement Bertrand Modifié par denewton le 17/03/2013 12:29 | |||||||
Petit astucien | Bonjour Voici votre fichier avec une idée http://cjoint.com/?3CrnziH8gNq un peu tiré par les cheveux ce n'est qu'une idée à vous de vérifier si cela convient§
| |||||||
Petit astucien | Bonjour, Si tu n'as qu'un cellule (celle correspondant à l'EPS) qui peut ne pas être numérique tu peux tester ceci: | |||||||
![]() ![]() | Bonjour, Bon une solution dans ton cas, la petite fonction N() a l'effet de renvoyer la valeur si elle numérique et de renvoyer 0 si c'est du texte, c'est donc utilisable ! Cependant introduite dans SOMMEPROD, elle ne donne pas le résultat qu'on pourrait attendre et aligne la valeur renvoyée sur le premier terme de la matrice [peut-être un bogue d'Excel, ou cette fonction ne supporte pas les matrices], il faut donc ruser un peu : =SOMME(SOMMEPROD(B5:G5;$B$3:$G$3);N(H5)*$H$3) NB- A l'intérieur de SOMMEPROD, inutile de multiplier (*), elle est conçue pour multiplier des matrices séparées par des ";". Dans le même esprit, pour le calcul de la moyenne : =I5/SOMME($B$3:$G$3;SI(N(H5);$H$3)) On aurait pu prendre le total et soustraire le coefficient EPS si "d", mais je choisis de préférence la plus courte à écrire. Le tout dans ton classeur : http://cjoint.com/?CCrn6PKvyvd: NB: Dans la 2e formule, la définition de la condition par : N(H5) seulement suffit car, à cet emplacement cette expression va renvoyer : si "d" = 0, donc = FAUX, donc = 0 ; si une note = la note (>0), donc = VRAI, donc = 1.
Modifié par ferrand le 17/03/2013 14:08 | |||||||
![]() ![]() | ||||||||
![]() ![]() | J'avais des a-priori de penser l'utilisation du seul SOMMEPROD allait renvoyer une erreur ou 0 !! Voilà ma version finale, qui tient compte des "d" où qu'ils soient, dans les deux formules. 1) =SOMMEPROD(--(B5:H5<>"d");$B$3:$H$3;B5:H5) 2) =I5/SOMMEPROD(--(B5:H5<>"d");$B$3:$H$3) http://cjoint.com/?CCroV6Zf89D | |||||||
Petit astucien | salut je vous remercie tous pour votre aide. j'ai appliqué la version finale de ferrand parce qu'elle est simple à écrire et elle a bien marché sur la feuille des moyennes des matières. j'ai crée une deuxième feuille que j'ai nommée bulletin et à laquelle j'ai appliqué la RECHERCHV avec un bouton compteur afin de pouvoir imprimer des bulletins. c'est bien sauf avec le D. merci http://cjoint.com/?CCssDjBWwno
| |||||||
![]() ![]() | Salut, Sur la colonne G, 2 possibilités équivalentes : utiliser N() ou PRODUIT(), ça donne comme formules en ligne 21 : =N(E21)*F21 ou =PRODUIT(E21<>"d";F21) Les deux vont donner 0 comme résultat. En F22, il faudrait utiliser SOMME.SI si tu veux ne pas prendre en compte le coeff. en cas de "d" : =SOMME.SI(E17:E21;"<>d";F17:F21) | |||||||
Petit astucien | salut ferrand j'ai essayél les formules que tu as postées le 18/O3/2013;mon problème est résolu mais lorsque j'ai crée un deuxième bulletin dans lequel j'ai inséré des lignes (A14:A15);(A19:A20);(A26:A27),je vais avoir donc des cellules disjointes.je les ai séparées par des ponts virgules.j'ai écrit les formules dans G28 et F 28 ,un message me dit que la formule contient une erreur. merci de ton aide http://cjoint.com/?CCwqT6qLDpR
| |||||||
![]() ![]() | Salut, =SOMME(SOMME.SI(E10:E13;"<>d";F10:F13);SOMME.SI(E16:E18;"<>d";F16:F18);SOMME.SI(E21:E25;"<>d";F21:F25)) ou =SOMME(F14;F19;F26)-SOMME.SI(E10:E25;"d";F10:F25) | |||||||
Petit astucien | salut ferrand je te remercie beaucoup.tout va comme je voudrais. | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|