IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

recherche sous 2 critères dans la même cellule [XL-2007]


Sujet :

Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut recherche sous 2 critères dans la même cellule
    Bonjour,

    J'ai de la difficulté à créer la formule qui réussira à faire afficher l'information dont j'ai besoin. Voici :
    un fichier, 2 feuilles
    sur la 1ère feuille, l'écriture de journal que je veux obtenir, 1ère colonne la description du compte recherché, 2e colonne, le centre de profit à saisir, 3e colonne, le numéro de compte à saisir
    sur la 2e feuille, les données, 1ère colonne, des centres de profit, 2e colonne, des numéros de compte, 3e colonne les descriptions de compte.
    Je veux que, après avoir saisi le centre de profit dans la 2e colonne de l'écriture (1ère feuille) ainsi que le numéro de compte dans la 3e colonne, la description du compte - qui correspond à ces 2 critères - s'affiche correctement. Une première difficulté provient du fait qu'il faut tenir compte de 2 critères pour obtenir la bonne description. Mais, la difficulté majeure provient du fait que certains numéros de compte (2e colonne de la feuille de données) se répètent dans la liste ; ils ne se distinguent que par le centre de profit qui est différent.
    Vraiment pas facile.
    Toute aide sera sincèrement appréciée. Merci.

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Dans ton cas, tu peux utiliser les formules Index + Equiv (formule matricielle)

    Une bonne documentation ici
    http://silkyroad.developpez.com/excel/indexequiv/#LIV
    Jérôme

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par jfontaine Voir le message
    Bonjour,

    Dans ton cas, tu peux utiliser les formules Index + Equiv (formule matricielle)
    J'ai fait plusieurs tentatives avec index & equiv mais ça ne fonctionne pas. Je dois tenir compte de l'information dans 2 colonnes et la formule index me donne, pour le 1er equiv, no de ligne et pour le 2e equiv, no de colonne alors que je voudrais obtenir no de ligne une seconde fois.
    Il faut que j'obtienne, dans la 1ère colonne de l'écriture, l'information qui tient compte à la fois de la saisie dans la 2e colonne et de la saisie dans la 3e colonne, toutes données étant stockées dans la 2e feuille.
    Merci encore.

  4. #4
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Si dessous un exemple.
    On souhaite avoir en retour la valeur se trouvant dans la feuilSource colonne A si la données se trouvant en colonne B est égal à B2 de la FeuilDest et que la donnée de la colonne C est égal à C2 de la feuilDest

    Tu valides la formule par CTRL + MAJ + ENTREE car formule matricielle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Index(FeuilSource!$A$1:$A$100;equiv(1;(FeuilSource!$B$1:$B$100=FeuilDest!B2)*(FeuilSource!$C$1:$C$100=FeuilDest!C2);0))
    Jérôme

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci Jérôme pour ton aide.
    Malheureusement, je n'obtiens pas le résultat souhaité. Voici ce que j'ai entré dans la cellule où je veux obtenir une description :

    INDEX ('Comptes GL'!A2:C446;EQUIV(3;('Comptes GL'!A2:A446='Écriture'!F7)*('Comptes GL'!B1:B446;'Écriture'G7);0)) sachant que :

    Comptes GL est la feuille qui contient les données sur la plage A2 à C446 (la matrice),
    3 est le numéro de la colonne contenant la description que je veux obtenir, laquelle se trouve naturellement sur la feuille Comptes GL,
    Écriture est le nom de la feuille où je veux voir afficher les informations,
    A est la colonne contenant la donnée qui devra correspondre à celle saisie dans la feuille Écriture, colonne F,
    B est la colonne contenant la donnée qui devra correspondre à celle saisie dans la feuille Écriture, colonne G.
    Je sais que dans la formule que tu m'as fournie, après EQUIV tu as indiqué le chiffre 1 mais je ne suis pas certaine de savoir à quoi cela fait référence ; c'est pour ça que j'ai mis 3 qui est le numéro de colonne contenant l'information que je cherche à obtenir.

    J'ai fait toutes sortes de tentatives. Rien ne réussit. Je commence à désespérer ...

    P.S. : J'ajoute que je ne comprends pas l'utilisation de * dans la formule puisque je ne cherche pas à faire un calcul mais à importer une donnée. Merci encore.

  6. #6
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    J'ai essayé de corriger ta formule suivant tes explications

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX('Comptes GL'!C2:C446;EQUIV(1;('Comptes GL'!A2:A446='Écriture'!F7)*('Comptes GL'!B1:B446;'Écriture'G7);0))
    ne pas oublier la validation par CTRL + MAJ + ENTREE

    Cette formule retourne la valeur de la colonne C si la donnée de la colonne A = F7 et (le *) la donnée de la colonne B = G7
    Jérôme

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    On y est presque, Jérôme.
    Avec cette formule révisée, j'obtiens une description plutôt que #N/A ; c'est un très grand pas. Ne reste qu'un petit pépin. J'obtiens l'info de la ligne suivant la ligne requise. Je m'explique. Avec le test que j'ai fait, je devrais obtenir la donnée de la ligne 216 mais j'obtiens plutôt celle de la ligne 217. Je sais qu'il existe une fonction DÉCALER pour ce genre de truc mais je ne l'ai jamais utilisée. Est-ce que tu serais assez gentil de m'indiquer comment faire ? J'espère que je n'abuse pas.
    Encore merci.

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    C'est re-moi.

    J'ai apporté une légère modification dans la formule que tu m'as fournie et que j'avais recopiée. Dans la dernière partie, au lieu de B1:B446, j'ai corrigé pour B2:B446 pour obtenir une plage similaire aux 2 autres (colonne A et colonne C) et oui !! j'obtiens la bonne description.
    WOW. C'est vrai que t'es un pro.
    Un très gros merci pour ton aide.

    Hélène (au Québec)
    décalage horaire oblige, je suis encore au boulot alors que chez-toi il est tard ; tu liras probablement mon message demain.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recherche de plusieurs critères dans un recordset
    Par Mariboo dans le forum Access
    Réponses: 13
    Dernier message: 21/05/2017, 12h50
  2. [AC-2003] Recherche multi-critère dans une même table
    Par Tadao dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 09/03/2010, 19h01
  3. recherche saut de ligne dans une même cellule
    Par dado91400 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 18/03/2009, 16h45
  4. [VBA-E]Retour a la ligne dans la même cellule
    Par el.meyo dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 26/07/2006, 17h28
  5. macro pour remplire une liste dans une même cellule
    Par fabiend83 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/07/2006, 09h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo