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

la fonction RECHERCHE() d'Excel

5 réponses
Avatar
dher_julo
J'utilise la fonction RECHERCHE d'Excel :
RECHERCHE(valeur_cherchée;vecteur_recherche;vecteur_résultat)

Cette fonction cherche la valeur "valeur_cherchée" dans la plage de donnée
indiquée et renvoie la valeur correspondant à "valeur_cherhcée" dans le
vecteur_résultat.

Je n'ai aucun problème avec cette fonction, elle est tout a fait efficace,
mais j'aimerais maintenant pouvoir aire ce genre de recherche en mettant deux
ou trois arguments en valeur recherchée.

Par exemple, imaginons un tableau de tee-shirt ayant une colone "logo", une
colone "taille", une colone "couleur" et une colonne "prix". Quelle fonction
utiliser pour me faire renvoyer le prix du tee-shirt [logo="lapin",
taille="xl" et couleur="vert"] ????

5 réponses

Avatar
AV
Je n'ai aucun problème avec cette fonction, elle est tout a fait efficace,


Les RECHERCHEtruc...boff.......

Par exemple, imaginons un tableau de tee-shirt ayant une colone "logo", une
colone "taille", une colone "couleur" et une colonne "prix". Quelle fonction
utiliser pour me faire renvoyer le prix du tee-shirt [logo="lapin",
taille="xl" et couleur="vert"] ????


Avec plages nommées - Validation matricielle (ctrl+maj+entrée) :
=INDEX(prix;EQUIV("lapin"&"xl"&"bleu";logos&tailles&couleurs;0))

AV

Avatar
ROCHE Pierre
Bonjour,
tu peux créer une colonne (de travail) dans laquelle tu concatènes les
colonnes sur les lesquelles tu veux des recherches.
Ex : tu crées la colonne "Travail" dans laquelle tu concatènes colonne
"Logo"&colonne"Taille"&colonne"Couleur" en prenant soin de formatter chaque
colonne au nombre de caractères max que peut prendre chaque colonne.
Dans ton exemple, logo="Lapin", si dans ta colonne "Logo" il peut exister
une cellule qui aura un maximum (ex "Chateau de cartes" (17 car)), eh bien,
il te faudra, dans ta concaténation (colonne "Travail"), formatter chaque
cellule de ta colonne "Logo" en 17 car ; idem pour toutes les colonnes
impactées par ta concaténation => ta concaténation finale sera bien alignée.
Ensuite, tu fais une recherche habituelle sur cette colonne "Travail" et tu
ressors ton prix.
Tu peux également te servir de cette méthode pour des tris de plus de 3
clés.

Cordialement.

"dher_julo" a écrit dans le message de
news:
J'utilise la fonction RECHERCHE d'Excel :
RECHERCHE(valeur_cherchée;vecteur_recherche;vecteur_résultat)

Cette fonction cherche la valeur "valeur_cherchée" dans la plage de donnée
indiquée et renvoie la valeur correspondant à "valeur_cherhcée" dans le
vecteur_résultat.

Je n'ai aucun problème avec cette fonction, elle est tout a fait efficace,
mais j'aimerais maintenant pouvoir aire ce genre de recherche en mettant
deux
ou trois arguments en valeur recherchée.

Par exemple, imaginons un tableau de tee-shirt ayant une colone "logo",
une
colone "taille", une colone "couleur" et une colonne "prix". Quelle
fonction
utiliser pour me faire renvoyer le prix du tee-shirt [logo="lapin",
taille="xl" et couleur="vert"] ????


Avatar
Philippe.R
Bonjour,
sans avoir testé
=sommeprod((logo="lapin")*(taille="xl")*(couleur="vert")*prix)
devrait pouvoir convenir
--
Amicales Salutations
XL 97 / 2000 / 2002
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

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

J'utilise la fonction RECHERCHE d'Excel :
RECHERCHE(valeur_cherchée;vecteur_recherche;vecteur_résultat)

Cette fonction cherche la valeur "valeur_cherchée" dans la plage de donnée
indiquée et renvoie la valeur correspondant à "valeur_cherhcée" dans le
vecteur_résultat.

Je n'ai aucun problème avec cette fonction, elle est tout a fait efficace,
mais j'aimerais maintenant pouvoir aire ce genre de recherche en mettant deux
ou trois arguments en valeur recherchée.

Par exemple, imaginons un tableau de tee-shirt ayant une colone "logo", une
colone "taille", une colone "couleur" et une colonne "prix". Quelle fonction
utiliser pour me faire renvoyer le prix du tee-shirt [logo="lapin",
taille="xl" et couleur="vert"] ????


Avatar
Daniel.M
Salut Alain,

Avec plages nommées - Validation matricielle (ctrl+maj+entrée) :
=INDEX(prix;EQUIV("lapin"&"xl"&"bleu";logos&tailles&couleurs;0))


La méthode proposée suppose la construction d'une matrice 'intermédiaire' de 3
colonnes de chaînes concaténées. Il me semble préférable, pour réduire la taille
de cette matrice intermédiaire, de faire une matrice de booléens (indépendante
de la longueur des chaînes).

Au surplus, elle évite des cas 'faux positifs' résultant d'une concaténation :
"lapi","nxl","bleu" par exemple

=INDEX(prix;EQUIV(1;(logos="lapin")*(tailles="xl")*(couleurs="bleu");0))

Salutations,

Daniel M. (just my two cents, as they say)

Avatar
AV
Avec plages nommées - Validation matricielle (ctrl+maj+entrée) :
=INDEX(prix;EQUIV("lapin"&"xl"&"bleu";logos&tailles&couleurs;0))


La méthode proposée suppose la construction d'une matrice 'intermédiaire' de 3
colonnes de chaînes concaténées.
Elle est où la matrice intermédiaire ? Je la vois même pas !

Ouarfff..ouarf...

Au surplus, elle évite des cas 'faux positifs' résultant d'une concaténation :
"lapi","nxl","bleu" par exemple
Ok pour ça, mais ça me semble un pur cas d'école, contournable en ajoutant des

champs bidons totalement "infréquentables" style :

=INDEX(prix;EQUIV("lapin"&"¤^"&"xl"&"¤^"&"bleu";logos&"¤^"&tailles&"¤^"&couleurs
;0))

Il me semble préférable, pour réduire la taille
de cette matrice intermédiaire, de faire une matrice de booléens (indépendante
de la longueur des chaînes).
Remarque validée !

;-)
AV