Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/08/2011, 11h08   #1
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
Par défaut Recherche; Formule matricielle

Bonjour,
je cherche a récupérer une liste de données selon une plage de critère avec une formule matricielle, voir l'exemple ci-joint

Merci pour votre aide.
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 11h31   #2
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 310
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 310
Points : 2 667
Points : 2 667
Bonjour,
Sans déposer un fichier lors de ton premier post, pourrais-tu expliquer ce que tu cherches exactement à faire.
Quel critère, quelle plage etc. ?
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 12h13   #3
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
dans ce cas tu peux utiliser le FILTRE DE DONNéES tout simplement
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 12h23   #4
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
Bonjour et merci corona

la plage ou il y a les correspondances est A:H qui est divisée en deux parties :
Les critères et les correspondances et je voudrais récupérer toutes les correspondances relatives aux critères dans la plage L1:O1
j’espère que je me suis fais comprendre et je reste a votre dispositions pour plus de détails
Merci pour votre aide
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 12h27   #5
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
dans chaque cellule de resultat tu fais
Code :
SI(ET($A3="A";$B3="A1";$C3="A2";$D3="A3");E3;"")
Fichiers attachés
Type de fichier : xls exemple1.xls (23,5 Ko, 6 affichages)
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 12h35   #6
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
Merci boussafi,
non , ce que je cherche réellement c'est une fonction dynamique donc matricielle.
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 12h41   #7
Expert Confirmé
 
Philippe Tulliez
Développeur et formateur VBA, Excel et Word.
Inscription : janvier 2010
Messages : 1 310
Détails du profil
Informations personnelles :
Nom : Philippe Tulliez
Localisation : Belgique

Informations professionnelles :
Activité : Développeur et formateur VBA, Excel et Word.

Informations forums :
Inscription : janvier 2010
Messages : 1 310
Points : 2 667
Points : 2 667
Bonjour,
Citation:
Envoyé par LaPanic Voir le message
Bonjour et merci corona
la plage ou il y a les correspondances est A:H qui est divisée en deux parties :
Les critères et les correspondances et je voudrais récupérer toutes les correspondances relatives aux critères dans la plage L1:O1
j’espère que je me suis fais comprendre et je reste a votre dispositions pour plus de détails
Merci pour votre aide
Et bien non, je n'ai rien compris, le site s'appelle developpez.com et pas devinez.com.
Franchement si avec le peu d'éléments que tu donnes quelqu'un arrive à te donner une fonction qui te satisfasse je lui tire mon chapeau.
__________________
Philippe Tulliez
http://philippe.tulliez.be
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
corona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 13h01   #8
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
Merci corona pour ta réponse,
allons-y doucement, je crois que boussafi a compris l'exemple sauf que la il faut une formule matricielle pour que les résultats soient dynamiques.

Résumons un peut les choses: je cherche une formule a insérer dans la plage L3:O15 pour qu'en fonction des données dans la plage L1:O1, il fasse une recherche dans le colonnes A:D et récupère les correspondances dans les colonnes E:H
j’espère que c'est plus claire ;)
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 15h19   #9
Membre Expert
 
Homme
Retraité
Inscription : avril 2011
Messages : 692
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Retraité

Informations forums :
Inscription : avril 2011
Messages : 692
Points : 1 443
Points : 1 443
Bonjour,

Citation:
Résumons un peut les choses: je cherche une formule a insérer dans la plage L3:O15 pour qu'en fonction des données dans la plage L1:O1, il fasse une recherche dans le colonnes A: D et récupère les correspondances dans les colonnes E:H
Sans vouloir enfoncer le clou, c'est exactement ce que fait la solution de boussafi.

Cordialement.
gFZT82 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 15h27   #10
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
slt gFZT82:
Non car si on change les critères dans la plage L1:O1 et on met:
C,C1,C2,C3 on doit récupérer les données correspondantes a cette chaine: n,c,d,w soit une seule ligne
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 15h37   #11
Membre Expert
 
Homme
Retraité
Inscription : avril 2011
Messages : 692
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Retraité

Informations forums :
Inscription : avril 2011
Messages : 692
Points : 1 443
Points : 1 443
Re-bonjour,

Voici ce que donne la formule de boussafi appliquée à la plage L3:O15.

Cordialement.
gFZT82 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 15h53   #12
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
superbe; tu as bien généralisé le cas gFZT82
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 22h50   #13
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 889
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 889
Points : 7 162
Points : 7 162
Bonjour,

Cette solution permet de restituer les données sur des lignes contiguës et suivant les critères souhaités

A mettre en L4 et copier la formule sur le tableau de restitution
Code :
=INDEX(E$4:E$10;PETITE.VALEUR(SI(($A$4:$A$10=$L$2)*($B$4:$B$10=$M$2)*($C$4:$C$10=$N$2)*($D$4:$D$10=$O$2)=1;LIGNE(E$4:E$10)-MIN(LIGNE(E$4:E$10))+1);LIGNES(L$4:L4)))
Formule a valider par CTRL +ALT + ENTREE

Exemple recherche et retour plusieurs valeurs.xls
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 23h23   #14
Membre expérimenté
 
Homme
Enseignant
Inscription : novembre 2009
Messages : 350
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : novembre 2009
Messages : 350
Points : 500
Points : 500
Bonjour à tous,

Un essai avec la formule matricielle (validée par CTRL+MAJ+ENTREE) en L3 suivante:
Code :
=SI(LIGNES(L$3:L3)<=SOMMEPROD(($A$3:$A$1000=$L$1)*($A$3:$A$1000<>""));INDEX(E$3:E$9;PETITE.VALEUR(SI($A$3:$A$1000=$L$1;LIGNE($E$3:$E$1000)-LIGNE($E$3)+1);LIGNES(L$3:L3)));"")
puis recopiée le long du tableau désiré...

Cordialement
hben1961 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2011, 13h44   #15
Membre habitué
 
Inscription : mai 2007
Messages : 314
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 314
Points : 106
Points : 106
Merci a tous pour vos réponses,

hben1961 et jfontaine: les deux solutions fonctionnent, elles sont différentes et il faut que j'apprenne a décortiquer ces maudites formules matricielles

je ne sais pas si on peut adapter ces formules pour récupère un résultat sans doublons je crois que j'ai déjà vu ça mais sur des formules plus simples ??
LaPanic est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h37.


 
 
 
 
Partenaires

Hébergement Web