Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

probleme de moyenne conditionnelle

22 réponses
Avatar
jieme
Bonjour à tous,

Voici mon problème: je souhaiterais établir une moyenne conditionnelle sous
Excel 2003 (je n'ai pas "moyenne.si" qui est sous 2007)
J'ai un tableau à 2 colonnes avec dans la première, la date et heure et dans
la seconde, les valeurs a traiter.
je fais un test sur l'heure mais la moyenne renvoyée semble prendre en
compte les valeurs nulles retournée par ce test.
Aprés de multiples essais, je me resoud à demander votre aide..
voici ma formule
{=MOYENNE(SI((HEURE(L1065C(-1):L1088C(-1))>7)+(HEURE(L1065C(-1):L1088C(-1)<22));L1065C:L1088C;0);L1065C:L1088C)}

Merci d'avance,
JM

10 réponses

1 2 3
Avatar
h2so4
MichD expressed precisely :
La seule ligne que j'ai lue et retenue

| le * est l'équivalent du ET et le + l'équivalent du ou

Cet énoncé est archifaux! Pour quelques explications, je te réfère à un
livre : "Formules et Fonctions Excel 2000" de John Walkenbach publié par
"M&T books, une marque de IDG Books Worlwide, ISBN: 2-84427-124-3
Page : 316.

Tu peux reproduire ce tableau dans une feuille de calcul d'Excel...

ColA ColB Col C Résultat affiché Col C
Ligne1 vrai vrai =Et(A1;B1) Vrai
Ligne2 vrai faux =Et(A2;B2) Faux
Ligne3 faux vrai =Et(A3;B3) Faux
Ligne4 faux faux =Et(A4;B4) Faux

Maintenant, en colonne D, la formule suivante que tu recopies
pour chacune des lignes de la plage de cellules.

Col D : Formule Col E : La formule matricielle suivante
matricielle (Ex: la formule du problème)
{=Et(A1:A4;B1:B4)} {¡:A4*B1:B4}

Résultat pour chacune des formules affiché:

ColD ColE
Faux 1
Faux 0
Faux 0
Faux 0

Et M. Walkenbach conclut : "En fait, les fonctions "ET" et "OU"
renvoient toujours une seule valeur, et non pas un tableau.
Même si ce tableau servant de paramètre à la fonction ET
contient uniquement des constantes, cette fonction renverra
quand même une seule valeur."
Il continue en disant : "Je n'ai jamais pu comprendre si ce comportement
est normal ou s'il s'agit d'un problème d'Excel, mais dans tous les cas, il
n'est pas cohérent avec le fonctionnement des autres fonctions."

{¡:A4*B1:B4} C'est le type de stratégie qu'il faut adopter pour effectuer
des opérations logiques avec des formules matricielles.

De conclure que les 2 approches sont équivalentes ne reflètent pas la
réalité!

MichD
---------------------------------------------------------------


MichD,

utilisant une version Anglaise d'Excel, la fonction ET et OU n'existe
pas dans mes fonctions excel. Je parlais de l'operateur Logique ET et
de l'opérateur logique OU. En algèbre booléenne le ET est représenté
par * et le OU par +.

Merci de tes précisions sur les fonctions ET() et OU() d'Excel, qui
effectivement ne semblent pas donner un résultat correct quand elles
sont utilisées dans des fonctions matricielles.

ps: j'ai le sentiment que tu as considéré ma réponse comme une attaque
personnelle, j'en suis désolé, même si je ne comprends pas pourquoi !

;o)

--
h2so4
ca PAN
pique DORA
.
Avatar
Jacquouille
Bonsoir
N'est-ce pas un peu la même approche qu'avec Sommeprod (chercher les
marteaux rouges ET verts, ou chercher les marteaux rouges OU verts) ?
En fait, n'est-ce pas le français qui nous influence dans le choix de
l'opérateur?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k8h5kr$l80$

La seule ligne que j'ai lue et retenue

| le * est l'équivalent du ET et le + l'équivalent du ou

Cet énoncé est archifaux! Pour quelques explications, je te réfère à un
livre : "Formules et Fonctions Excel 2000" de John Walkenbach publié par
"M&T books, une marque de IDG Books Worlwide, ISBN: 2-84427-124-3
Page : 316.

Tu peux reproduire ce tableau dans une feuille de calcul d'Excel...

ColA ColB Col C Résultat affiché Col C
Ligne1 vrai vrai =Et(A1;B1) Vrai
Ligne2 vrai faux =Et(A2;B2) Faux
Ligne3 faux vrai =Et(A3;B3) Faux
Ligne4 faux faux =Et(A4;B4) Faux

Maintenant, en colonne D, la formule suivante que tu recopies
pour chacune des lignes de la plage de cellules.

Col D : Formule Col E : La formule matricielle suivante
matricielle (Ex: la formule du problème)
{=Et(A1:A4;B1:B4)} {¡:A4*B1:B4}

Résultat pour chacune des formules affiché:

ColD ColE
Faux 1
Faux 0
Faux 0
Faux 0

Et M. Walkenbach conclut : "En fait, les fonctions "ET" et "OU"
renvoient toujours une seule valeur, et non pas un tableau.
Même si ce tableau servant de paramètre à la fonction ET
contient uniquement des constantes, cette fonction renverra
quand même une seule valeur."
Il continue en disant : "Je n'ai jamais pu comprendre si ce comportement
est normal ou s'il s'agit d'un problème d'Excel, mais dans tous les cas, il
n'est pas cohérent avec le fonctionnement des autres fonctions."

{¡:A4*B1:B4} C'est le type de stratégie qu'il faut adopter pour effectuer
des opérations logiques avec des formules matricielles.

De conclure que les 2 approches sont équivalentes ne reflètent pas la
réalité!

MichD
---------------------------------------------------------------
Avatar
MichD
Dans cet énoncé : !le * est l'équivalent du ET et le + l'équivalent du ou"

A ) Il est difficile de savoir si tu parles des fonctions "ET" et "OU" ou
des
opérateurs logiques.

B ) L'usage de la fonction "ET" et "OU" se comporte exactement comme des
opérateurs logiques SAUF lorsqu'il s'agit de formules matricielles.

C ) L'objectif de mon propos était de démontrer ce qui se passe avec les
fonctions "ET" et "OU" dans des formules matricielles. À cet égard,
l'affirmation est simplement fausse!


| utilisant une version Anglaise d'Excel, la fonction ET et OU
| n'existe pas dans mes fonctions excel

*** Cela semble être évident. Cependant leurs consoeurs anglaises "And" ou
"OR"
devraient être présentes. Admettons que c'est assez basique comme
information!


| ps: j'ai le sentiment que tu as considéré ma réponse comme une attaque
| personnelle, j'en suis désolé, même si je ne comprends pas pourquoi !

*** Pas du tout. C'est davantage relié à une question de perception des
propos!
Perso, j'aime bien les échanges et l'ajout de précisions sur une
réponse que
je donne. C'est d'abord le but du (des) forum.

MichD
---------------------------------------------------------------
Avatar
h2so4
MichD wrote on 21/11/2012 :
Dans cet énoncé : !le * est l'équivalent du ET et le + l'équivalent du ou"

A ) Il est difficile de savoir si tu parles des fonctions "ET" et "OU" ou des
opérateurs logiques.

B ) L'usage de la fonction "ET" et "OU" se comporte exactement comme des
opérateurs logiques SAUF lorsqu'il s'agit de formules matricielles.

C ) L'objectif de mon propos était de démontrer ce qui se passe avec les
fonctions "ET" et "OU" dans des formules matricielles. À cet égard,
l'affirmation est simplement fausse!


| utilisant une version Anglaise d'Excel, la fonction ET et OU
| n'existe pas dans mes fonctions excel

*** Cela semble être évident. Cependant leurs consoeurs anglaises "And" ou
"OR"
devraient être présentes. Admettons que c'est assez basique comme
information!


| ps: j'ai le sentiment que tu as considéré ma réponse comme une attaque
| personnelle, j'en suis désolé, même si je ne comprends pas pourquoi !

*** Pas du tout. C'est davantage relié à une question de perception des
propos!
Perso, j'aime bien les échanges et l'ajout de précisions sur une
réponse que
je donne. C'est d'abord le but du (des) forum.

MichD
---------------------------------------------------------------



j'arrête de discuter. je n'aime pas le ton des tes deux dernières
réponses. c'est archifaux... c'est assez basique. on n'est pas dans la
discussion on est dans le dénigrement. et je ne comprends toujours pas
pourquoi.

bonne soirée.

--
h2so4
ca PAN
pique DORA
.
Avatar
Jacquouille
HOLA, messires,
on se calme.
Que quelqu'un expose une perception des choses et qu'il se trompe, c'est
normal.
Que un autre quelqu'un le corrige et expose sa manière de voir les choses,
c' est normal.
Mais, arrivé à ce stade de la discussion, il est impératif d'avancer des
arguments, des preuves.
On ne peut pas mal qualifier quelqu'un sans apporter la preuve de l'erreur
commise ou des termes employés.
Ici, les mots "dénigrement" me parait quelque peu excessif.
N'oublions pas que cet espace est un endroit public et que la courtoisie y
est de rigueur.
Qu'y a-t- il de faux d'écrire que "and" et "or" sont les penchants grand
bretons de nos "et" et "ou" gaulois et que les + ou * ont une signification
différente?
J'ai parlé de SOMMEPROD. Là aussi, on utilise les signes + et *
Peux-tu apporter la preuve que Denis se trompe lorsqu'il cite J. Walkenbach
?
"Errare humanum est;
Perseverare diabolicum."


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacquouille" a écrit dans le message de groupe de discussion :
50ad3e85$0$3117$

Bonsoir
N'est-ce pas un peu la même approche qu'avec Sommeprod (chercher les
marteaux rouges ET verts, ou chercher les marteaux rouges OU verts) ?
En fait, n'est-ce pas le français qui nous influence dans le choix de
l'opérateur?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k8h5kr$l80$

La seule ligne que j'ai lue et retenue

| le * est l'équivalent du ET et le + l'équivalent du ou

Cet énoncé est archifaux! Pour quelques explications, je te réfère à un
livre : "Formules et Fonctions Excel 2000" de John Walkenbach publié par
"M&T books, une marque de IDG Books Worlwide, ISBN: 2-84427-124-3
Page : 316.

Tu peux reproduire ce tableau dans une feuille de calcul d'Excel...

ColA ColB Col C Résultat affiché Col C
Ligne1 vrai vrai =Et(A1;B1) Vrai
Ligne2 vrai faux =Et(A2;B2) Faux
Ligne3 faux vrai =Et(A3;B3) Faux
Ligne4 faux faux =Et(A4;B4) Faux

Maintenant, en colonne D, la formule suivante que tu recopies
pour chacune des lignes de la plage de cellules.

Col D : Formule Col E : La formule matricielle suivante
matricielle (Ex: la formule du problème)
{=Et(A1:A4;B1:B4)} {¡:A4*B1:B4}

Résultat pour chacune des formules affiché:

ColD ColE
Faux 1
Faux 0
Faux 0
Faux 0

Et M. Walkenbach conclut : "En fait, les fonctions "ET" et "OU"
renvoient toujours une seule valeur, et non pas un tableau.
Même si ce tableau servant de paramètre à la fonction ET
contient uniquement des constantes, cette fonction renverra
quand même une seule valeur."
Il continue en disant : "Je n'ai jamais pu comprendre si ce comportement
est normal ou s'il s'agit d'un problème d'Excel, mais dans tous les cas, il
n'est pas cohérent avec le fonctionnement des autres fonctions."

{¡:A4*B1:B4} C'est le type de stratégie qu'il faut adopter pour effectuer
des opérations logiques avec des formules matricielles.

De conclure que les 2 approches sont équivalentes ne reflètent pas la
réalité!

MichD
---------------------------------------------------------------
Avatar
h2so4
Jacquouille expressed precisely :
HOLA, messires,
on se calme.


je suis calme ;o)
Que quelqu'un expose une perception des choses et qu'il se trompe, c'est
normal.


correct
Que un autre quelqu'un le corrige et expose sa manière de voir les choses, c'
est normal.


correct
Mais, arrivé à ce stade de la discussion, il est impératif d'avancer des
arguments, des preuves.


correct
On ne peut pas mal qualifier quelqu'un sans apporter la preuve de l'erreur
commise ou des termes employés.


correct, j'ai mis en avant le vocabulaire utilisé, qui me fait penser
(c'est ma perception, je le reconnais) que l'on n'est plus dans la
discussion mais dans le dénigrement.
Ici, les mots "dénigrement" me parait quelque peu excessif.


cfr supra
N'oublions pas que cet espace est un endroit public et que la courtoisie y
est de rigueur.


d'accord, j'ai présenté mes excuses si j'avais pu choquer, mais si je
n'ai pas compris pourquoi.
Qu'y a-t- il de faux d'écrire que "and" et "or" sont les penchants grand
bretons de nos "et" et "ou" gaulois et que les + ou * ont une signification
différente?


rien
J'ai parlé de SOMMEPROD. Là aussi, on utilise les signes + et *


correct
Peux-tu apporter la preuve que Denis se trompe lorsqu'il cite J. Walkenbach ?


je n'ai jamais dit que Denis se troompait. Je suis sûr de ses grandes
compétences et connaissances au vu de la qualité de ses très nombreuses
interventions.

J'attirais simplement l'attention de jieme que l'operateur logique ET
est * et l'operateur OU est + et non l'inverse, faisant suite à la
question qu'il a posée, ceci indépendemment du contexte excel.
"Errare humanum est;
Perseverare diabolicum."


ce que je suis en train de faire en réagissant à ce post, alors que je
ne le voulais pas. Cela n'amène rien à la discussion.

j'ai du mal m'exprimer, j'ai pas compris où ? mais je m'en excuse
auprès des membres de ce forum et particulièrement vis-à-vis de Denis.

h2so4

--
h2so4
ca PAN
pique DORA
.
Avatar
Jacquouille
Pour les hommes de qualité, il y a toujours un terrain d'entente.
Je crois que nous l'avons trouvé.
Et pour finir une fois de plus avec du latin:
" In medio stat virtus"
"La vérité se trouve loin des extrêmes "
et non : "Elle a la vertu au milieu..." -))
Allez, bonne soirée


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"h2so4" a écrit dans le message de groupe de discussion :
k8lt6c$t9b$

Jacquouille expressed precisely :
HOLA, messires,
on se calme.


je suis calme ;o)
Que quelqu'un expose une perception des choses et qu'il se trompe, c'est
normal.


correct
Que un autre quelqu'un le corrige et expose sa manière de voir les choses,
c' est normal.


correct
Mais, arrivé à ce stade de la discussion, il est impératif d'avancer des
arguments, des preuves.


correct
On ne peut pas mal qualifier quelqu'un sans apporter la preuve de l'erreur
commise ou des termes employés.


correct, j'ai mis en avant le vocabulaire utilisé, qui me fait penser
(c'est ma perception, je le reconnais) que l'on n'est plus dans la
discussion mais dans le dénigrement.
Ici, les mots "dénigrement" me parait quelque peu excessif.


cfr supra
N'oublions pas que cet espace est un endroit public et que la courtoisie y
est de rigueur.


d'accord, j'ai présenté mes excuses si j'avais pu choquer, mais si je
n'ai pas compris pourquoi.
Qu'y a-t- il de faux d'écrire que "and" et "or" sont les penchants grand
bretons de nos "et" et "ou" gaulois et que les + ou * ont une
signification différente?


rien
J'ai parlé de SOMMEPROD. Là aussi, on utilise les signes + et *


correct
Peux-tu apporter la preuve que Denis se trompe lorsqu'il cite J.
Walkenbach ?


je n'ai jamais dit que Denis se troompait. Je suis sûr de ses grandes
compétences et connaissances au vu de la qualité de ses très nombreuses
interventions.

J'attirais simplement l'attention de jieme que l'operateur logique ET
est * et l'operateur OU est + et non l'inverse, faisant suite à la
question qu'il a posée, ceci indépendemment du contexte excel.
"Errare humanum est;
Perseverare diabolicum."


ce que je suis en train de faire en réagissant à ce post, alors que je
ne le voulais pas. Cela n'amène rien à la discussion.

j'ai du mal m'exprimer, j'ai pas compris où ? mais je m'en excuse
auprès des membres de ce forum et particulièrement vis-à-vis de Denis.

h2so4

--
h2so4
ca PAN
pique DORA
.
Avatar
LSteph
Bonjour,

Je suis d'accord..
On peut tout à fait réaliser une moyenne conditionelle avec sommeprod

=Sommeprod((condition1)*(condition2);matrice)/Sommeprod((condition1)*(condition2))

C'est juste un peu plus long à écrire en apparence car en réalité
il suffit de copier coller la partie conditionnelle du premier sommeprod
pour avoir le second derriere le / et ajouter la )

de plus on saisit normalement puisque sommeprod est déjà matriciel.

--
LSteph


"Jacquouille" a écrit dans le message de
news:50ad3e85$0$3117$
Bonsoir
N'est-ce pas un peu la même approche qu'avec Sommeprod (chercher les
marteaux rouges ET verts, ou chercher les marteaux rouges OU verts) ?
En fait, n'est-ce pas le français qui nous influence dans le choix de
l'opérateur?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k8h5kr$l80$

La seule ligne que j'ai lue et retenue

| le * est l'équivalent du ET et le + l'équivalent du ou

Cet énoncé est archifaux! Pour quelques explications, je te réfère à un
livre : "Formules et Fonctions Excel 2000" de John Walkenbach publié par
"M&T books, une marque de IDG Books Worlwide, ISBN: 2-84427-124-3
Page : 316.

Tu peux reproduire ce tableau dans une feuille de calcul d'Excel...

ColA ColB Col C Résultat affiché Col C
Ligne1 vrai vrai =Et(A1;B1) Vrai
Ligne2 vrai faux =Et(A2;B2) Faux
Ligne3 faux vrai =Et(A3;B3) Faux
Ligne4 faux faux =Et(A4;B4) Faux

Maintenant, en colonne D, la formule suivante que tu recopies
pour chacune des lignes de la plage de cellules.

Col D : Formule Col E : La formule matricielle suivante
matricielle (Ex: la formule du problème)
{=Et(A1:A4;B1:B4)} {¡:A4*B1:B4}

Résultat pour chacune des formules affiché:

ColD ColE
Faux 1
Faux 0
Faux 0
Faux 0

Et M. Walkenbach conclut : "En fait, les fonctions "ET" et "OU"
renvoient toujours une seule valeur, et non pas un tableau.
Même si ce tableau servant de paramètre à la fonction ET
contient uniquement des constantes, cette fonction renverra
quand même une seule valeur."
Il continue en disant : "Je n'ai jamais pu comprendre si ce comportement
est normal ou s'il s'agit d'un problème d'Excel, mais dans tous les cas,
il
n'est pas cohérent avec le fonctionnement des autres fonctions."

{¡:A4*B1:B4} C'est le type de stratégie qu'il faut adopter pour
effectuer
des opérations logiques avec des formules matricielles.

De conclure que les 2 approches sont équivalentes ne reflètent pas la
réalité!

MichD
---------------------------------------------------------------
Avatar
jieme
Bonjour Messieurs,

OUla!, je ne pensais pas que ma simple question soulèverait autant
d'échanges passionnés...

Pour revenir à mon petit problème il se trouve que la formule suivante
"fonctionne" pour effectuer la moyenne sur les heures de jour:
=MOYENNE{(SI(((HEURE(L1215C2:L1238C2)>=7)+(HEURE(L1215C2:L1238C2)<")=2);L1215C1:L1238C1;"no
data"))}
et celle ci pour les heures de nuit:
=MOYENNE{(SI(((HEURE(L1215C2:L1238C2)<7)+(HEURE(L1215C2:L1238C2)>22)=1);L1215C1:L1238C1;"no
data"))}
(Désolé, pour ce qui me concerne et depuis quelques dizaines d'années je
suis résolument favorable à la notation LC que je trouve plus aisée pour le
reperage et le debugage)
J'aimerai joindre un extrait de feuille de calcul a ce message mais je ne
sais pas comment faire (si vous pouvez me donner la procédure...)

Par contre l'utilisation des formules matricielles avec les accolades
augmente notablement le temps de calcul et comme mon fichier compte plus de
20000 données avec plusieurs champs, je suis passé par Matlab avec les
commandes "find". Je couple Matlab et Excel avec Excelink qui est vraiment
très commode (getmatrix et putmatrix).

Encore merci à tous et bonne journée,

Jean-Marc













"Jacquouille" a écrit dans le message de news:
50ae8307$0$3105$
Pour les hommes de qualité, il y a toujours un terrain d'entente.
Je crois que nous l'avons trouvé.
Et pour finir une fois de plus avec du latin:
" In medio stat virtus"
"La vérité se trouve loin des extrêmes "
et non : "Elle a la vertu au milieu..." -))
Allez, bonne soirée


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"h2so4" a écrit dans le message de groupe de discussion :
k8lt6c$t9b$

Jacquouille expressed precisely :
HOLA, messires,
on se calme.


je suis calme ;o)
Que quelqu'un expose une perception des choses et qu'il se trompe, c'est
normal.


correct
Que un autre quelqu'un le corrige et expose sa manière de voir les
choses,
c' est normal.


correct
Mais, arrivé à ce stade de la discussion, il est impératif d'avancer des
arguments, des preuves.


correct
On ne peut pas mal qualifier quelqu'un sans apporter la preuve de
l'erreur
commise ou des termes employés.


correct, j'ai mis en avant le vocabulaire utilisé, qui me fait penser
(c'est ma perception, je le reconnais) que l'on n'est plus dans la
discussion mais dans le dénigrement.
Ici, les mots "dénigrement" me parait quelque peu excessif.


cfr supra
N'oublions pas que cet espace est un endroit public et que la courtoisie
y
est de rigueur.


d'accord, j'ai présenté mes excuses si j'avais pu choquer, mais si je
n'ai pas compris pourquoi.
Qu'y a-t- il de faux d'écrire que "and" et "or" sont les penchants grand
bretons de nos "et" et "ou" gaulois et que les + ou * ont une
signification différente?


rien
J'ai parlé de SOMMEPROD. Là aussi, on utilise les signes + et *


correct
Peux-tu apporter la preuve que Denis se trompe lorsqu'il cite J.
Walkenbach ?


je n'ai jamais dit que Denis se troompait. Je suis sûr de ses grandes
compétences et connaissances au vu de la qualité de ses très nombreuses
interventions.

J'attirais simplement l'attention de jieme que l'operateur logique ET
est * et l'operateur OU est + et non l'inverse, faisant suite à la
question qu'il a posée, ceci indépendemment du contexte excel.
"Errare humanum est;
Perseverare diabolicum."


ce que je suis en train de faire en réagissant à ce post, alors que je
ne le voulais pas. Cela n'amène rien à la discussion.

j'ai du mal m'exprimer, j'ai pas compris où ? mais je m'en excuse
auprès des membres de ce forum et particulièrement vis-à-vis de Denis.

h2so4

--
h2so4
ca PAN
pique DORA
.

Avatar
MichD
Je suis d'accord avec toi, les formules matricielles sur de grandes plages
de cellules
bouffent beaucoup de ressources. Tu as l'opportunité de passer en mode de
calcul
manuel et d'utiliser la touche F9 lorsque tu veux effectuer une mise à jour
des calculs
de la feuille.


MichD
---------------------------------------------------------------
1 2 3