Equivalence d'une fonction VAR.SI - EXCEL

Résolu/Fermé
Ben - 4 juin 2012 à 11:31
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 - 6 juin 2012 à 10:18
Bonjour à tous & toutes,

Voici mon problème:
Je cherche à écrire une fonction VAR.SI qui n'existe pas dans les formules d'EXCEL (v2007). En gros, j'aimerai calculer une variance sur une plage de données avec le choix d'un critère.
L'application serait d'automatiser un calcul de variance mensuel (le critère étant le mois).

Dans le même type de fonction, vous avez :
=MOYENNE.SI(plage pour le critère;critère;plage pour le calcul de la moyenne)
qui permet de faire la même chose pour une moyenne.

J'ai d'abord essayé de passer par la formule de la variance :

V(x) = ?(Xi-Xmoy)/N


A voir également:

5 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
Modifié par eriiic le 4/06/2012 à 11:46
Bonjour,

Je suppose que tu as regardé les 4 fonctions VAR...() d'excel et qu'aucune ne convient.
Si tu pouvais montrer un exemple de calcul sur une feuille excel.
cjoint.com et coller ici le lien fourni.

eric
0
Bonjour Eriiic,

En effet, j'ai testé les 4 fonctions VAR disponible. Le résultat attendu est celui de VAR.P, cependant cette fonction fonctionne avec une plage de données simple (sans critère), par conséquent, il faut sélectionner la plage de données chaque mois (ce que je cherche à éviter).

J'aimerai que la personne entre ses résultats d'analyses et que EXCEL calcul automatiquement la variance.

Voici, un exemple de fichier que je voudrais traiter : http://cjoint.com/?3FenyoOsuCr
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
Modifié par eriiic le 4/06/2012 à 13:51
Ca manque d'explication, où et quoi ???
Je connais bien excel, mais pas tes stats
C'est quoi ce 7 dans critère ??
Montre au moins un calcul, comment il se fait.

cependant cette fonction fonctionne avec une plage de données simple (sans critère), par conséquent, il faut sélectionner la plage de données chaque mois (ce que je cherche à éviter).
C'est peut-être faisable avec un nom dynamique.
met, en plus, une fonction var.p() correcte

eric
0
Excuse-moi, j'essaie d'expliciter :

En page 1, tu as des exemples de données que j'aimerai traiter.
En page 2, tu as mon tableur où je souhaites traiter les données.

Dans la page 1, j'ai mis la formule =MOIS(date) pour faire sortir le numéro du mois (1 à 12). Ce même numéro me sert de critère de sélection de données, dans ma formule =MOYENNE;SI. En outre j'indique à chaque tableur de traiter les données sur 1 mois seulement (en fonction du critère et d'une analyse).
Ainsi j'aimerai faire :
(somme des écarts entre mes valeurs [en page 1] et ma moyenne [de la page 2])² / par mon effectif du mois caractérisé par =NB.SI(plage de données n°mois; critère)
J'arrive à le faire mais de manière non automatisée, car comme tu peux le voir le nombre de données par mois sont différentes ,par conséquent, je dois absolument me servir d'un critère de sélection ce qui serait dans l'esprit des formules excel :

=VAR.SI(plage du critère;critère;plage de données)

J'ai essayé une formule comme celle-ci pour détourner la difficulté:
=(SOMME.SI(BHA!$A:$A;$F$4;BHA!F:M)^2-2*(SOMME.SI(BHA!$A:$A;$F$4;BHA!F:M)*MOYENNE.SI(BHA!$A:$A;$F$4;BHA!F:M)+MOYENNE.SI(BHA!$A:$A;$F$4;BHA!F:M)^2)/NB.SI(BHA!$A:$A;$F$4)

Mais je pense qu'au lieu de me faire la sommes des écarts au carré et fait d'abord la somme au carré puis me fait la différence

Ben,
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
Modifié par eriiic le 4/06/2012 à 16:47
et un exemple de var.p() sur 1 mois avec ses parametres stp, car si on peut autant l'utiliser.
Et tu n'as toujours pas expliqué le parametre critère=7 en D4...
0
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 2 404
4 juin 2012 à 20:03
bonjour

un calcul "manuel" de moyenne, variance, ecart type pour plages variables avec sommeprod

https://www.cjoint.com/?0Feua5daNxp

salutations cordiales à eric

bonne suite
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
4 juin 2012 à 23:09
Salut ccm81,

C'est, en partie, où je voulais en venir mais j'aurais bien aimé qu'il réponde complètement.

Je vais être pas mal occupé ces prochains jours, je te laisse finir avec lui si tu veux bien.

eric
0
@ eriiic : le critère (D4) c'est simplement mon n° de mois en réponse à ma page 1. Après pour VAR.P c'est une fonction simple comme une =MOYENNE(), je sélectionne à la main mes données à traiter (soit les valeurs pour 1 mois) et j'ai mon résultat. Néanmoins je devais sélectionner mes données chaque mois.

@ccm81: j'ai jamais eu l'occasion de travailler avec des plages dynamiques mais je constate sa grande utilité, donc je vais très certainement utilisé ce type de calcul qui me parait approprié avec ce que je souhaite réaliser.

Merci à vous deux d'avoir consacrés du temps afin de me répondre, et de l'aide que vous m'avez apportés.

Cordialement, Ben
0
ccm81,

j'ai utilisé les plages dynamiques avec votre formule ça marche super bien pour mes plages de données sans trous cependant il y a un petit bémol, comment peut-on faire s'il y a un trou dans mon tableau de données.
Essayez de prendre votre tableur que vous m'avez envoyé et supprimer l'une des MS, la formule ne réagit plus.

Cordialement, Ben
0
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 2 404
Modifié par ccm81 le 5/06/2012 à 13:24
bonjour

Les trous n'apparaissaient pas dans ton tableau, donc je n'ai pas vérifié ce cas.
Effectivement, avec des trous il y a un problème soit avec sommeprod, soit avec décaler, soit avec les deux, que je ne suis pas arrivé à régler (il faudra demander à eric, nettement plus compétent que moi, le pourquoi de la chose)
J'ai donc redéfini les plages de façon non dynamiques (en taillant large) et ajouté la condition "non vide" dans le décompte des cellules des plages avec sommeprod.
https://www.cjoint.com/?0Ffntsvy3NJ
reste à vérifier bien sûr !!!

bonne suite
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
5 juin 2012 à 15:02
Bien sûr que je l'ai la solution : ne pas faire de trou et tout devient plus simple :-)
Gérer des plages multiples et on a une formule imbuvable et impossible à maintenir.
A+
eric
0
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 2 404
5 juin 2012 à 20:01
Comme dit eric, si les plages sont sans trou, tout est plus simple ...
S'il n'y avait que ça. En regardant ton fichier d'un peu plus près, je me suis aperçu qu'en plus du mois, l'année aussi rentrerait un jour ou l'autre dans le jeu
Je me suis un peu laissé aller et j'ai gardé la gestion des trous et rajouté une couche pour l'année
A tester bien sûr, et tu me dis ce que tu en penses
https://www.cjoint.com/?0FfuasseOa2

bonne soirée
0
Je suis entièrement d'accord avec vous, des plages sans trou seraient préférable :). Cependant, ce n'est pas cas étant donné que certaines analyses sont non systématiques...
Le fichier n°1 sans les plages dynamiques est vraiment au top, je l'ai testé hier et il marche très très bien :) donc déjà un grand merci !
De plus, concernant l'utilité d'y ajouter un critère sur l'année même si je te remercie beaucoup d'y avoir penser et surtout d'y avoir trouver une solution car dans d'autres document cela pourra me servir, à l'heure actuelle, mon présent document est archivé chaque année et un nouveau est crée en début d'exercice par conséquent même si l'année change durant l'exercice, il n'est pas nécessaire de prendre en compte l'année car je ne travaille que sur 12 mois.

Encore un grand merci à vous 2, très cordialement,
Ben
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 2 404
6 juin 2012 à 10:18
de rien, le sujet était intéressant et on apprend toujours quelque chose ...

peux tu mettre le problème à résolu (en haut de ton 1° message)

bonne suite
0