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 :

[excel] comment utiliser INDEX/EQUIV avec 2 conditions


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Par défaut [excel] comment utiliser INDEX/EQUIV avec 2 conditions
    Bonjour

    J'ai un problème sans doute de synthaxe avec une formule

    J'ai une table A1:E20
    Je recherche une valeur dans la colonne E de ma table A1:E20
    si dans la colonne D je trouve la valeur D2
    et si dans la colonne B, je trouve la valeur B2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX(Feuil1!$A$1:$E$20;EQUIV(Feuil2!D2;Feuil1!$D$1:$D$20;0);5)
    la premiére condition fonctionne bien, mais je ne trouve pas comment associer la 2ème condition dans la fonction equiv

    EXCEL me signale que j'ai une erreur avec la synthaxe suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX(Feuil1!$A$1:$E$20;EQUIV(ET(Feuil2!D2;Feuil1!$D$1:$D$20;0);(Feuil2!B2;Feuil1!$B$1:$B$20;0);5)
    Merci de votre aide

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 73
    Par défaut
    Bonjour,

    Ton erreur de syntaxe vient du fait que la fonction ET renvoie VRAI ou FAUX et donc la sortie ne peut pas etre utilisée dans ta fonction EQUIV.

    A mon avis, tu dois d'abord vérifier que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    EQUIV(Feuil2!D2;Feuil1!$D$1:$D$20;0) = EQUIV(Feuil2!B2;Feuil1!$B$1:$B$20;0)
    car tu ne pourras pas trouver une valeur dans la colonne E si la formule renvoie deux lignes différentes (une pour Feuil2!B2 et une pour Feuil2!D2)
    et après utiliser l'index sur la valeur unique trouvée.

    Sur une meme ligne de code, ca donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =INDEX(Feuil1!$A$1:$E$20;SI(SI(EQUIV(Feuil2!D2;Feuil1!$D$1:$D$20;0)=EQUIV(Feuil2!B2;Feuil1!$B$1:$B$20;0);"O";"N")="O";EQUIV(Feuil2!D2;Feuil1!$D$1:$D$20;0);"N");5)
    Le seul problème est que cela renvoie #VALEUR! s'il n'a pas trouvé B2 et D2 dans les colonnes B et D.

    J'espère que ca pourra t'aider.

  3. #3
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello,

    si tu concatènes tes 2 colonnes, tu peux revenir au cas d'une seule condition, non ?

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 652
    Par défaut
    bonjour à tous,
    je suppose que la formule est en feuil1 et qu'il faut que les valeurs B2 et D2 soient sur la m^ligne dans le colonnes B et D



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =si(equiv(feuil2!D2;D1:D20;0)=equiv(feuil2!B2:B1;0);index(E1:E20;equiv(feuil2!B2;B1:B20;0));"")
    n'est pas traité le cas où D2 ou B2 ne sont pas dans les colonnes B et D

    formule non testée, syntaxe à vérifier...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Par défaut
    Bonjour à tous

    merci de me donner un gros coup de pouce, car je suis complètement perdue.
    La première formule me donne effectuivement un #valeur
    et la seconde prend la condition à vide
    je vous envoie le fichier, ce sera peut-être plus simple

    En fonction du
    Fichiers attachés Fichiers attachés

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 652
    Par défaut
    re,

    en regardant ton fichier, tu as plusieurs problèmes: les numéros d'ordre et le modèle apparraissent plusieurs fois: par exemple 4 et AW (de mémoire); pire tu as plusieurs lignes identiques dans table! AW et 7 par exemple. (et m^ avec les dates)
    IL faudrait donc concaténer comme le proposait Cafeine et qu'il n'y ait pas de doublons dans la concaténation.
    Ce n'est qu'une fois résolu ces problèmes qu'on pourra trouver une solution.

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

Discussions similaires

  1. [XL-2003] Utiliser INDEX+EQUIV avec 2 critères
    Par bernardokeller dans le forum Excel
    Réponses: 6
    Dernier message: 16/08/2011, 13h57
  2. Réponses: 1
    Dernier message: 04/05/2006, 10h45
  3. [Excel] Comment utiliser la fonction RECHERCHEV
    Par forsay1 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 03/02/2006, 11h43
  4. [CF][PPC/VB.NET] Comment utiliser les Socket avec Pocket PC ?
    Par joefou dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 17/05/2005, 14h24

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