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

Fonction Grande.valeur avec condition

21 réponses
Avatar
Starwing
Un gros beau bonjour =E0 tout le monde,

En ce beau samedi matin ensoleill=E9 au Qu=E9bec, une personne=20
est assisse devant son =E9cran d'ordinateur, plus=20
pr=E9cis=E9ment devant un tableur Excel, sans bouger depuis=20
quelques temps d=E9j=E0, testant ici et l=E0 des formules de son=20
cru, mais qui h=E9las, n'arrive pas au r=E9sultat escompt=E9.=20
Cette personne =E0 beau se pencher sur ce probl=E8me depuis=20
hier soir, r=E9fl=E9chir, s'interroger, se munir de bouquins=20
sp=E9cialis=E9s, rechercher sur les groupes, superpos=E9s des=20
formules de AV, d'Isabelle et de Daniel M. sans pour=20
autant arriv=E9 =E0 un r=E9sultat.

Pour tous ceux ou celles qui peuvent l'aider, voici son=20
probl=E8me:

En A1:AX Des num=E9ros d'employ=E9=20
En B1:BX Les noms de tous les employ=E9s qui ont travaill=E9=20
durant la p=E9riode.
En C1:CX Des codes de Gain variant de 001 =E0 999
En D1:DX Le(s) taux horaire(s) de l'employ=E9. Un seul=20
employ=E9 peux avoir plus d'un taux horaire s'il occupe=20
plusieurs fonctions durant la semaine.

En E1: Le num=E9ro de l'employ=E9 =E0 analyser=20
En F1: Son nom
En E2: Le gain =E0 analyser ex: 001
En F2: Une formule qui trouverait la premiere plus grande=20
valeur du taux horaire de l'employ=E9 selon le num=E9ro=20
d'employ=E9 en E1 et du Gain en E2.
En G2: Une formule qui trouverait la deuxi=E8me plus grande=20
valeur du taux horaire de l'employ=E9 (s'il y a lieu) selon=20
le num=E9ro d'employ=E9 en E1 et du Gain en E2.
etc!


Merci d'avance =E0 tous,

Starwing

10 réponses

1 2 3
Avatar
AV
Plus dur cela Hein!


Pfff.....
Le "vacancier" va te faire ça avec un petit coup de PRODUITMAT.....TRANSPOSE

AV

Avatar
Daniel.M
Salut Starwing,

Vos deux formules fonctionnent,car je les ai testé, sauf
que vos deux formules renvoient souvent les mêmes
résultats.

Ex:
no employé Nom Gain Taux
00001 Starwing 001 19.25
00001 Starwing 001 19.25
00001 Starwing 001 18.15
00001 Starwing 001 18.75
00001 Starwing 001 19.25

j'obiens:19.25 - 19.25 - 19.25 - 18.75 - 18.15
J'aimerais obtenir:
Pour la plus grande valeur: 19.25
Pour la deuxième: 18.75
Pour la troisième: 18.15

;-)
Plus dur cela Hein!


Ça semble aussi dur long à formuler exhaustivement qu'à répondre ;-)

La matricielle suivante est plus rapide que la variation PRODUIT.MATRICIEL,
surtout pour les grandes plages. Et elle peut réagir aux lignes vides si tu le
désires (tu fais signe).

=GRANDE.VALEUR(SI(FREQUENCE(SI((E1¡:A4)*(F1±:B4)*(E2Á:C4);D1:D4;
MAX(D1:D4)+1);SI((E1¡:A4)*(F1±:B4)*(E2Á:C4);D1:D4;MAX(D1:D4)+1))>0;
SI((E1¡:A4)*(F1±:B4)*(E2Á:C4);D1:D4;""));K)

Ton feedback est apprécié.

Salutations,

Daniel M.

Avatar
Starwing
Tu me fais toujours bien rire AV, Je t'aime beaucoup, même
si tu es de l'autre côté de l'Atlantique... À Montréal le
temps s'est assombri, mais tu fais toujours entrer du
soleil dans ma demeure avec tes commentaires.

Starwing

P.S.
J'ai vu ta photo AV, j'espère seulement que c'était
vraiment la tienne...


-----Message d'origine-----
Plus dur cela Hein!


Pfff.....
Le "vacancier" va te faire ça avec un petit coup de
PRODUITMAT.....TRANSPOSE


AV






.




Avatar
docm
Bonjour AV.

Si cette formule fonctionne
=GRANDE.VALEUR(SI((numeros=$E$1)*(codes=$G$1);taux);1)
pourquoi la formule suivante ne fonctionne-t-elle pas?
=GRANDE.VALEUR(SI(ET(numeros=$E$1;codes=$G$1);taux);1)

Merci.

"AV" wrote in message
news:
Je comprends pas très bien pourquoi il faut tester le Nom de l'employé ET
son

numéro mais bon..
Exemple de 2° grande valeur du "TauxH" pour les 2 conditions énoncées :
Matricielle :
=GRANDE.VALEUR(SI((Numérosá)*(Nomsñ);TauxH);2)

Pour la 1°, remplacer 2 par 1 dans la formule
AV




Avatar
Daniel.M
Parce que le ET donne un scalaire (une valeur unique) alors que tu espérerais
une matrice comme résultat afin de continuer ton calcul.
C'est pour ça qu'on multiplie les matrices car le résultat est une autre matrice
(et non un scalaire).

Salutations,

Daniel M.

"docm" wrote in message
news:
Bonjour AV.

Si cette formule fonctionne
=GRANDE.VALEUR(SI((numeros=$E$1)*(codes=$G$1);taux);1)
pourquoi la formule suivante ne fonctionne-t-elle pas?
=GRANDE.VALEUR(SI(ET(numeros=$E$1;codes=$G$1);taux);1)

Merci.


Avatar
Starwing
Bonjour Daniel M(eilleur)

Je vérifie ta formule aprés avoir préparé le dîner à mes
petits monstres et je te reviens s'il y a lieu...

A bientôt et encore merci..

Toi aussi je t'aime...

Je vais faire des jaloux...:-))

Starwing
-----Message d'origine-----
Salut Starwing,

Vos deux formules fonctionnent,car je les ai testé, sauf
que vos deux formules renvoient souvent les mêmes
résultats.

Ex:
no employé Nom Gain Taux
00001 Starwing 001 19.25
00001 Starwing 001 19.25
00001 Starwing 001 18.15
00001 Starwing 001 18.75
00001 Starwing 001 19.25

j'obiens:19.25 - 19.25 - 19.25 - 18.75 - 18.15
J'aimerais obtenir:
Pour la plus grande valeur: 19.25
Pour la deuxième: 18.75
Pour la troisième: 18.15

;-)
Plus dur cela Hein!


Ça semble aussi dur long à formuler exhaustivement qu'à
répondre ;-)


La matricielle suivante est plus rapide que la variation
PRODUIT.MATRICIEL,

surtout pour les grandes plages. Et elle peut réagir aux
lignes vides si tu le

désires (tu fais signe).

=GRANDE.VALEUR(SI(FREQUENCE(SI((E1¡:A4)*(F1±:B4)*
(E2Á:C4);D1:D4;

MAX(D1:D4)+1);SI((E1¡:A4)*(F1±:B4)*
(E2Á:C4);D1:D4;MAX(D1:D4)+1))>0;

SI((E1¡:A4)*(F1±:B4)*(E2Á:C4);D1:D4;""));K)

Ton feedback est apprécié.

Salutations,

Daniel M.


.




Avatar
Starwing
Bonjour Daniel,

C'est parfait, ça fonctionne numéro 1. Comme d'habitude.
Tu sais Daniel, j'ai une autre question, très embêtante
cette fois.
Je suis toujours impressionné par la qualité et la
rapidité à laquelle vous répondez à mes questions et à
tous les autres aussi. Souvent, vous réussissez à me faire
perdre les deux bras et je reste figé, que dis-je pétrifié
devant vos réponses. Il m'arrive souvent d'être convaincu
qu'il n'existe pas de solution à certains problèmes et
PAF! Voilà qu'AV ou toi-même trouvez une solution tout en
prenant le temps de rigoler...

J'avoue, sans gêne, que je me casse la tête sérieusement
( Papier, crayon, etc)pendant de très très long moment
avant d'envoyer un message, probablement dans le but de
mesurer mes propres connaissances ou de me pratiquer... en
tout cas j'aime imaginer que c'est pour cela.
Une fois le message envoyer, les réponses de AV et de toi
viennent très rapidement, trop rapidement même, de quoi me
questionner sérieusement sur mes propres capacités ou plus
particulièrement sur les vôtres...

D'où ma question:
Etes-vous des génies?

En tous les cas, j'ai bien hâte d'atteindre votre niveau.
Je prie Dieu pour qu'il me laisse vivre très longtemps
pour y parvenir.

Starwing

-----Message d'origine-----
Salut Starwing,

Vos deux formules fonctionnent,car je les ai testé, sauf
que vos deux formules renvoient souvent les mêmes
résultats.

Ex:
no employé Nom Gain Taux
00001 Starwing 001 19.25
00001 Starwing 001 19.25
00001 Starwing 001 18.15
00001 Starwing 001 18.75
00001 Starwing 001 19.25

j'obiens:19.25 - 19.25 - 19.25 - 18.75 - 18.15
J'aimerais obtenir:
Pour la plus grande valeur: 19.25
Pour la deuxième: 18.75
Pour la troisième: 18.15

;-)
Plus dur cela Hein!


Ça semble aussi dur long à formuler exhaustivement qu'à
répondre ;-)


La matricielle suivante est plus rapide que la variation
PRODUIT.MATRICIEL,

surtout pour les grandes plages. Et elle peut réagir aux
lignes vides si tu le

désires (tu fais signe).

=GRANDE.VALEUR(SI(FREQUENCE(SI((E1¡:A4)*(F1±:B4)*
(E2Á:C4);D1:D4;

MAX(D1:D4)+1);SI((E1¡:A4)*(F1±:B4)*
(E2Á:C4);D1:D4;MAX(D1:D4)+1))>0;

SI((E1¡:A4)*(F1±:B4)*(E2Á:C4);D1:D4;""));K)

Ton feedback est apprécié.

Salutations,

Daniel M.


.




Avatar
Daniel.M
D'où ma question:
Etes-vous des génies?


:-)

"Comme tous les jeunes gens, j'étais bien parti pour devenir un génie,
mais malheureusement, j'ai appris à rire."
--Cléa, Lawrence Durrell

Au final, je te souhaite de bien rigoler. ;-)

Salutations,

Daniel M.

Avatar
docm
Ouille ouille, ayoille. Pas évident.
Merci Daniel.

"Daniel.M" wrote in message
news:
Parce que le ET donne un scalaire (une valeur unique) alors que tu
espérerais

une matrice comme résultat afin de continuer ton calcul.
C'est pour ça qu'on multiplie les matrices car le résultat est une autre
matrice

(et non un scalaire).

Salutations,

Daniel M.

"docm" wrote in message
news:
Bonjour AV.

Si cette formule fonctionne
=GRANDE.VALEUR(SI((numeros=$E$1)*(codes=$G$1);taux);1)
pourquoi la formule suivante ne fonctionne-t-elle pas?
=GRANDE.VALEUR(SI(ET(numeros=$E$1;codes=$G$1);taux);1)

Merci.






Avatar
AV
Je constate, avec plaisir, que l'air de la Gironde ne t'a pas encrassé les
neurones ;-)

AV
1 2 3