Excel, recherche multiple

Fermé
helene63 - 3 oct. 2015 à 10:40
 helene63 - 19 oct. 2015 à 10:55
Bonjour à tous,

Je suis pas très douée en excel, cependant, pour mon travail, j'aimerai me simplifier la vie. Pour vous expliquer j'ai un fichier composé de 25 colonnes et 150 lignes. A partir de celui ci je voudrais créer sur la feuille 2 un fichier me sortant uniquement certaines colonnes de certaines lignes.

pour être plus clair, en feuil1 j'ai des noms de pays en colonne F, je voudrais que par exemple si je mets colombie, ça me sorte les colonnes N, M, et L lorsque le pays de la colonne F est colombie.

Je sais pas si c'est clair.

Avec un RECHERCHEV, ça ne fonctionne que pour le premier.

Merci beaucoup
A voir également:

6 réponses

DjiDji59430 Messages postés 4037 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 26 avril 2024 646
3 oct. 2015 à 10:48
Bonjour Hélène, et bienvenue,

Quand on joint un fichier-test, (avec TOUTES les explications) ou mieux, si c'est possible, le fichier concerné, c'est plus commode pour les intervenants. Et tu as plus de chances que quelqu'un s'intéresse à ton problème

1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans la discussion, et, dans ton message de réponse, tu fais : "Coller".

Cordialement.
0
Mike-31 Messages postés 18314 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 073
3 oct. 2015 à 11:09
Bonjour,

pas très clair mais d'après ce que je comprends tu veux afficher des valeurs qui se trouve avant la colonne F qui contient ton Nom

si c'est cela il faut utiliser ce type de formule


=INDEX(A2:L150;EQUIV(M2;F2:F150;0);4)

A2:L150 est la matrice de ton tableau

exemple M2 est la cellule critère qui contient ton Nom (à adapter)

F2:F150 est la plage ou se trouve ton Nom

4 est l'index colonne ou doit se faire la recherche, exemple 4 pour la colonne D ou 2 pour la colonne B

0
Merci pour vos réponses, c'est en réalité un peu plus complexe.

J'ai créé un fichier pour mieux me faire comprendre, largement simplifié par rapport à la réalité

http://www.cjoint.com/c/EJdjzHryaMV

Merci pour votre aide
0
Mike-31 Messages postés 18314 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 073
Modifié par Mike-31 le 3/10/2015 à 13:17
Re,

il faut utiliser une formule matricielle que tu devras confirmer en cliquant en même temps sur les trois touches du clavier Ctrl, Shift et Entrée et si tu fais bien la formule se placera entre ces accolades {}

exemple tu mets le critère Colombie en K2

=INDEX($F$2:$F$20;PETITE.VALEUR(SI($E$2:$E$20=$K$2;LIGNE(INDIRECT("1:"&LIGNES($E$2:$E$20))));LIGNES($1:1)))

pour éviter le message d'erreur complète la comme ceci

=SIERREUR(INDEX($F$2:$F$20;PETITE.VALEUR(SI($E$2:$E$20=$K$2;LIGNE(INDIRECT("1:"&LIGNES($E$2:$E$20))));LIGNES($1:1)));"")


ou encore cette formule

=SI(LIGNES($1:1)<=NB.SI($E$2:$E$18;$K$2);INDEX($F$2:$F$18;PETITE.VALEUR(SI($E$2:$E$18=$K$2;LIGNE(INDIRECT("1:"&LIGNES($E$2:$E$18))));LIGNES($1:1)));"")


quelque soit la formule une fois confirmée, incrémente vers le bas et idem pour les recherches des montants en adaptant la plage critère $F$2:$F$18 en $G$2:$G$18

comme tu utilises la formule dans un autre onglet chaque plage sera précédé de l'identification onglet exemple pour la plage colonne E Sheet1!$E$2:$E$18 je te conseille de nommer tes plages, exemple la plage
$E$2:$E$18 nommée Pays
$F$2:$F$18 nommée Objet etc ..

exemple cette formule deviendra
=SI(LIGNES($1:1)<=NB.SI(Pays;$K$2);INDEX(Objet;PETITE.VALEUR(SI(Pays=$K$2;LIGNE(INDIRECT("1:"&LIGNES(Pays))));LIGNES($1:1)));"")

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
Modifié par tontong le 3/10/2015 à 14:03
Bonjour,
En variante une solution sans matricielle (merci Vaucluse):
http://www.cjoint.com/c/EJdl2FiytfH
Bien sûr on peut reporter le calcul en feuil2, choisir de ne pas afficher les 0 (option Excel), nommer les champs.

Mea culpa: si j'avais mieux lu la demande initiale j'aurais expliqué un peu.
0
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
3 oct. 2015 à 15:59
Ce que fait le fichier joint:
Commencer par établir une liste des pays sans doublon:
La colonne I s'incrémente quand elle rencontre un nouveau pays.
À partir de cette numérotation la colonne J établit la liste sans doublon des pays.

La liste déroulante en K2 s'obtient avec Données >> Validation.

La colonne L numérote les occurences du pays choisi en K2.
La colonne M regroupe cette numérotation limitée.

Les colonnes suivantes donnent les résultats des recherches avec des "Index/Equiv" .
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
3 oct. 2015 à 16:25
Bonjour à tous,

Voici une solution avec un filtre avancé
https://www.cjoint.com/c/EJdoytYddxI

A+
0
Merci Gyrus mais peux tu m'expliquer ce que fait ta macro en détaillé? je n'arrive pas du tout à l'appliquer à mon cas
Merci beaucoup
0