OVH Cloud OVH Cloud

SOMMEPROD, INDEX, EQUIV , vous mélangez et ça devrait donner la solution ???

14 réponses
Avatar
Pounet95
Bonjour à toutes, et tous
XL2000 Windows XPPro

Pour expliciter l'objet :

Je cherche à contrôler le contenu d'un tableau par rapport à un tableau de
référence.
Je tente de mettre en oeuvre SOMMEPROD mais bien que n'ayant pas fréquenté
Le Lippaya ces temps derniers, j'ai le cerveau bien embrumé et je n'y arrive
pas.
Y faudrait-il en plus un zeste d'INDEX, EQUIV ou RECHERCHEV ??

Voici les tableaux : référence en col A et col B
A contrôler pour chaque couple D et E sont existence en A et B


Col A Col B Col D Col E
Renault R 4 Renault R 4
Peugeot 305 Peugeot 305
Renault R 9 Peugeot 605
Renault R 18 Peugeot 307
Renault R 14 Peugeot 309
Peugeot R 20 Peugeot 403
Peugeot 307 Peugeot 404
Peugeot 309 Peugeot 405
Renault R 11 Peugeot 407
Peugeot 403 Peugeot 505
Peugeot 404 Peugeot 504
Peugeot 405 Renault R 9
Renault Dauphine Renault R 18
Peugeot 407 Renault R 14
Peugeot 505 Renault R 11
Peugeot 504 Renault Dauphine

Merci pour vos réponses.

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
Conseillé :
http://dj.joss.free.fr/netiquet.htm
(charte, nétiquette, conseils, abréviations, souriettes...)
http://www.excelabo.net/mpfe/connexion.php
(connexion, conseils...)

4 réponses

1 2
Avatar
anonymousA
la "bonne" formule qui résoud les cas de figure dont je parlais dans le
1er post parait être en matricielle :

=SI(SOMMEPROD(N(Marque¡)*N(Modele±))>0;INDEX(plagetotale;EQUIV(1;N(Marque¡);0);3);"")
Ici, j'ai rajouté une colonne à droite de la zone Modele ( donc en F1)
et je l'ai rempli d'une valeur et j'ai nommé la zone D1:F1 plagetotale.

En conséquence, si on a en A1=tat et B1¬c alors la formule placée en
G1 (p.e) renverra la valeur de ce qu'il y a en F1.

Si j'écris la même formule en G2 avec
=SI(SOMMEPROD(N(Marque¢)*N(Modele²))>0;INDEX(plagetotale;EQUIV(1;N(Marque¢);0);3);"")
alors SOMMEPROD(N(Marque¢)*N(Modele²))>0 ne sera pas vrai et donc G2
ne renverra rien

Merci à Daniel pour SOMMEPROD(N(Marque¢)*N(Modele²))>0 car ca m'a
fait bien avancer.

A+

Bonjour,

cette formule fonctionne sans difficulté dans ton cas. J'attire
toutefois ton attention sur la reproductibilité de celle-ci dans TOUS
les cas.
En effet, imaginons que tu aies un tableau comme plage de référence avec
en D1=tat et en E1¬c (ici pour toi la zone nommée Marque est
équivalente à D1 et la zone nommée Modèle équivalente à E1). Ton tableau
de valeurs lui est en A1=tat et en B1¬c, en A2=tata , en B2Ì .

Si tu appliques la formule qui t'es communiquée pour A1 B1 puis A2 B2,
tu obtiendras pour les 2 cas précédents, le même N° de ligne à savoir 1
( dans ce cas), car la valeur de référence concaténée D1&E1 est la même
que les valeurs de recherche , à savoir A1&B1 ou A2B2. Pour autant, tu
vois bien que les cellules A2 et B2 sont différentes des cellules des
plages nommées.

Ceci dit, cette remarque s'applique quand on risque de rencontrer ce
genre de cas de figure ce qui n'est vraiment à prendre en compte qu'en
cas de BDD de taille suffisamment grande pour qu'on ne puisse pas
vérifier que ce type d'occurence puisse se produire.

A+



Bonsoir,
Merci, c'est clair
Bonne soirée





Avatar
Gros Minet
Bonjour !

Un chti coup de ciseaux et ya pu d'problème ! :-))

=SI(ESTNA(EQUIV(A2&" "&B2;Marque&" "&type;0));"pas d'équivalent";EQUIV(A2&"
"&B2;Marque&" "&type;0))

Cordialement.

Gros Minet.

"anonymousA" a écrit dans le message de news:
43a71ccf$0$6669$
la "bonne" formule qui résoud les cas de figure dont je parlais dans le
1er post parait être en matricielle :

=SI(SOMMEPROD(N(Marque¡)*N(Modele±))>0;INDEX(plagetotale;EQUIV(1;N(Marque¡);0);3);"")
Ici, j'ai rajouté une colonne à droite de la zone Modele ( donc en F1) et
je l'ai rempli d'une valeur et j'ai nommé la zone D1:F1 plagetotale.

En conséquence, si on a en A1=tat et B1¬c alors la formule placée en G1
(p.e) renverra la valeur de ce qu'il y a en F1.

Si j'écris la même formule en G2 avec
=SI(SOMMEPROD(N(Marque¢)*N(Modele²))>0;INDEX(plagetotale;EQUIV(1;N(Marque¢);0);3);"")
alors SOMMEPROD(N(Marque¢)*N(Modele²))>0 ne sera pas vrai et donc G2
ne renverra rien

Merci à Daniel pour SOMMEPROD(N(Marque¢)*N(Modele²))>0 car ca m'a fait
bien avancer.

A+

Bonjour,

cette formule fonctionne sans difficulté dans ton cas. J'attire toutefois
ton attention sur la reproductibilité de celle-ci dans TOUS les cas.
En effet, imaginons que tu aies un tableau comme plage de référence avec
en D1=tat et en E1¬c (ici pour toi la zone nommée Marque est
équivalente à D1 et la zone nommée Modèle équivalente à E1). Ton tableau
de valeurs lui est en A1=tat et en B1¬c, en A2=tata , en B2Ì .

Si tu appliques la formule qui t'es communiquée pour A1 B1 puis A2 B2, tu
obtiendras pour les 2 cas précédents, le même N° de ligne à savoir 1 (
dans ce cas), car la valeur de référence concaténée D1&E1 est la même que
les valeurs de recherche , à savoir A1&B1 ou A2B2. Pour autant, tu vois
bien que les cellules A2 et B2 sont différentes des cellules des plages
nommées.

Ceci dit, cette remarque s'applique quand on risque de rencontrer ce
genre de cas de figure ce qui n'est vraiment à prendre en compte qu'en
cas de BDD de taille suffisamment grande pour qu'on ne puisse pas
vérifier que ce type d'occurence puisse se produire.

A+



Bonsoir,
Merci, c'est clair
Bonne soirée







Avatar
anonymousA
Bonjour,

Depuis, j'ai un peu plus creusé et reprenant l'exemple dont je me
servias dans mon post, nul besoin de coup de ciseau en appliquant en
matricelle

=SI(SOMMEPROD((Marque¢)*(Type²))>0;INDEX(plagetotale;EQUIV(2;(Mar que¢)+(Type²);0);3);"")

A+
Avatar
Pounet95
Bonjour,

Je vois que d'un "zeste d'EQUIV et INDEX" on en arrive à non plus un fil
mais une corde ;o)))
Je tente de suivre ( tout en essayant de me dépatouiller des autres
problèmes Excel quand ce n'est pas OE qui s'en mêle
m'obligeant à re poster car ne voyant pas un fil où j'ai oublié l'objet )

Bonne journée

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
Conseillé :
http://dj.joss.free.fr/netiquet.htm
(charte, nétiquette, conseils, abréviations, souriettes...)
http://www.excelabo.net/mpfe/connexion.php
(connexion, conseils...)

"Pounet95" a écrit dans le message de news:

Bonjour à toutes, et tous
XL2000 Windows XPPro

Pour expliciter l'objet :

Je cherche à contrôler le contenu d'un tableau par rapport à un tableau de
référence.
Je tente de mettre en oeuvre SOMMEPROD mais bien que n'ayant pas fréquenté
Le Lippaya ces temps derniers, j'ai le cerveau bien embrumé et je n'y
arrive
pas.
Y faudrait-il en plus un zeste d'INDEX, EQUIV ou RECHERCHEV ??

Voici les tableaux : référence en col A et col B
A contrôler pour chaque couple D et E sont existence en A et B


Col A Col B Col D Col E
Renault R 4 Renault R 4
Peugeot 305 Peugeot 305
Renault R 9 Peugeot 605
Renault R 18 Peugeot 307
Renault R 14 Peugeot 309
Peugeot R 20 Peugeot 403
Peugeot 307 Peugeot 404
Peugeot 309 Peugeot 405
Renault R 11 Peugeot 407
Peugeot 403 Peugeot 505
Peugeot 404 Peugeot 504
Peugeot 405 Renault R 9
Renault Dauphine Renault R 18
Peugeot 407 Renault R 14
Peugeot 505 Renault R 11
Peugeot 504 Renault Dauphine

Merci pour vos réponses.

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
Conseillé :
http://dj.joss.free.fr/netiquet.htm
(charte, nétiquette, conseils, abréviations, souriettes...)
http://www.excelabo.net/mpfe/connexion.php
(connexion, conseils...)



1 2