Ignorer des cellules vides pour un calcul

Bonjour à tous,

J'utilise cette formule pour calculer une sorte de moyenne :

=(SOMME.SI(Données!E5:E100;(Données!W5);Données!K5:K100)+SOMME.SI(Données!E5:E100;(Données!W6);Données!K5:K100))/(NB.SI(Données!E5:E100;"3 mois")+NB.SI(Données!E5:E100;"3,5 mois"))

Comme vous le voyez cette formule appelle la rangée de K5 à K100. Sauf que parmi ces cellules, certaines sont vides (K5, K14, K16...). J'aimerais "ignorer" ces cellules vides dans ma formule, car sinon elle les considère comme des 0, ce qui fausse la moyenne.

En gros, la formule calculerait la moyenne de certaines rangées uniquement (toutes celles où la rangée K contient une valeur).

Il n'existe pas une commande pour ignorer les cellules vides ?

Merci beaucoup

Bonjour Tedisnake

Pour moi, il faut utiliser les fonctions plus poussées : SOMME.SI.ENS() et NB.SI.ENS()

A+

Bonjour,

Post un fichier représentatif 😉

Bonjour Tedinaske, BrunoM45, JB_,

Il conviendrait d'utiliser plutôt la formule MOYENNE.SI.ENS au lieu de ton ensemble de formules.

Exemple: Je souhaites calculer la moyenne de 5 articles ayant pour référence le jeu 421. Mais le dernier est ici offert.

50421
98421
87421
65421
0421

Avec la formule citée plus haut tu obtiens 75 comme moyenne. Si le dernier article vaut 100, on a alors 80 comme moyenne.

En gardant 0 en bas mais en changeant 421 par 402 en troisième ligne du tableau.

La moyenne passe à 71 car la somme sera de 213 / 3 articles. Et si le dernier article vaut 100, on a alors 78,25 comme moyenne.

=MOYENNE.SI.ENS(C5:C9;C5:C9;"<>0";D5:D9;"=421")

Bonjour à tous et merci pour vos réponses !

Malheureusement cela fait plusieurs heures que j'essaye vos solutions, et je n'y arrive toujours pas...

Voici en pièce jointe mon fichier, avec ma dernière tentative, sans succès.

Voilà ma dernière formule tentée, que vous retrouverez en E5 de la feuille "Résultats" :

=MOYENNE.SI.ENS(Données!K5:K100;K5:K100;">=0";Données!E5:E100;"3 mois";Données!E5:E100;"3,5 mois")

Je précise que je veux que la moyenne prenne en compte les 0, par exemple la valeur située en K12 (la personne a fait un bon score dans son test des ischio-jambiers). MAIS elle ne doit pas prendre en compte les cellules vides, là où le test des ischio-jambiers n'a pas été effectué.

A nouveau,

Il n'existe pas une commande pour ignorer les cellules vides ?

Bon, si tu acceptes le zéro (comme valeur, je préfère mieux un chiffre ou plusieurs devant). A part au golf

Sans télécharger ton fichier et en reprenant mon exemple. La formule que tu souhaites ci-dessous.

=MOYENNE.SI.ENS(C5:C9;C5:C9;"<>'";D5:D9;"=421")

Attention... j'ai placé un simple quôte dans les 1iers guillemets après le >

Si cela te convient...

Bonjour le fil

Tedisnake, quand tu fais F2 sur ta formule, il n'y a pas quelque chose qui te choque

image

Problème de référence à ta feuille "Données"

2022 07 23 18h39 05

Par contre la formule ne peut pas contenir 2 égalités, il faut donc l'écrire ainsi (exemple pour le 4ème mois)

=SIERREUR(MOYENNE.SI.ENS(Données!K$5:K$100;Données!K$5:K$100;"<>";Données!E$5:E$100;">=4 mois";Données!E$5:E$100;"<=4,5 mois");0)

A+

Bonsoir à tous !

Une proposition ?

Je vous laisse le soin d'adapter les formules pour les autres lignes.

Incroyable merci beaucoup à vous deux !! Donc c'était possible !

Bonjour à tous !

Incroyable merci beaucoup à vous deux !! Donc c'était possible !

Deux ? Il me semble que trois contributions ont été faites....

Ne pas oublier de passer le sujet en mode résolu !

Ah oui oups !

Alerte !! J'ai oublié quelque chose. Je voudrais finalement que la formule calcule uniquement les moyennes pour les LCA et les LCA + suture (colonne D de la feuille Données). J'ai essayé selon le principe ci-dessus mais ça ne fonctionne pas, je ne comprends pas pourquoi.

Voici ici ma formule, où j'ai fait que les LCA pour tester :

=SIERREUR(MOYENNE.SI.ENS(Données!K$5:K$100;Données!K$5:K$100;"<>";Données!E$5:E$100;">=3 mois";Données!E$5:E$100;"<=3,5 mois";Données!D$5:D$20;"LCA");0)
De plus, comment je vais faire pour prendre les LCA ET les LCA + suture ? Vu que ce ne sont pas des valeurs, je ne vais pas pouvoir créer un intervalle comme l'a fait BrunoM45 !

Merci beaucoup

Bonsoir à tous !

Avez-vous consulté l'aide Microsoft traitant de la fonction MOYENNE.SI.ENS ?

..... dans MOYENNE.SI.ENS chaque plage_critères doit avoir la même taille et la même forme que plage_somme

Avez-vous lu la charte du Forum ?

Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).

Bonjour, je suis désolé je n'avais pas lu ce passage de la charte.

Oui exact, je sais pas pourquoi j'ai mis D20.

J'ai réussi à afficher la moyenne que pour les LCA :

=SIERREUR(MOYENNE.SI.ENS(Données!K$5:K$100;Données!K$5:K$100;"<>";Données!E$5:E$100;">=3 mois";Données!E$5:E$100;"<=3,5 mois";Données!D$5:D$100;"LCA");0)

Mais alors comment faire pour afficher pour les LCA ET/OU les LCA + suture méniscale ?

J'ai essayé d'incrémenter la fonction OU mais ça ne fonctionne pas : (nombre insuffisant d'arguments pour cette fonction)

=SIERREUR(MOYENNE.SI.ENS(Données!K$5:K$100;Données!K$5:K$100;"<>";Données!E$5:E$100;">=3 mois";Données!E$5:E$100;"<=3,5 mois";OU(Données!D$5:D$100;"LCA";"LCA + suture méniscale"));

J'ai regardé partout sur internet mais impossible d'arriver à exploiter un ET/OU ici

Bonjour à tous !

Une proposition amendée tenant compte de vos nouvelles contraintes, et utilisant la fonction FILTRE :

Bonjour JFL, c'est une super proposition !

Malheureusement j'aimerais que la formule ne s'arrête pas à la ligne 25, mais à la ligne 100. Du coup, le calcul prend en compte les cellules vides, et je me retrouve avec une erreur DIV/0... C'est possible de contourner ça ?

Bonjour à tous !

Malheureusement j'aimerais que la formule ne s'arrête pas à la ligne 25, mais à la ligne 100. Du coup, le calcul prend en compte les cellules vides, et je me retrouve avec une erreur DIV/0... C'est possible de contourner ça ?

Vous venez de buter sur la limite des plages fixes dans les formules ! Excellente chose....

Cela va vous obliger à travailler avec des tableaux structurés.

EDIT : Exemple dans le fichier :

Rechercher des sujets similaires à "ignorer vides calcul"