Recherche à critères multiples

Bonjour,

J'arrive pas à créer une formule qui rechercherait 4 critères dans une matrice et me rapporterait le bon taux de taxe à utiliser.

SVP voir le fichier suivant: https://www.cjoint.com/?DAroNELZwbH
L'explication en détail s'y trouve.

Merci,--
eLise

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,
    J'ai compris ce que vous souhaitez, par contre je ne pense pas que celà soit simple à faire par des formules. je vais attendre de voir si quelqu'un a une solution excel, sinon je vous proposerez une macro.
    1. Bonjour,

      J'avais vu quelque chose qui ressemblait à ce que je veux faire mais ça n'a pas fonctionné. Il s'agissait d'une formule utilisant d'abord INDEX combiné avec EQUIV. Je me demande si je l'ai mal utilisée puisque je ne suis pas familière avec ces fonctions.

      Est-ce que vous croyez que ces fonctions pourraient être utilisées dans mon cas?
  2. Contributeur
    Bonjour Billing
    en attendant ccm qui va surement faire mieux, essayez ceci en H2 de votre tableau:
    =SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="N/A";"";SOMMEPROD((Taxes!$A$2:$A$241=B2)*(Taxes!$E$2:$E$241=D2)*(Taxes!$F$2:$F$241=E2)*(SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="GHK";$I$2:$I$241;Taxes!$J$2:$J$241))))

    Mais cette formule n'admet pas de valeur texte dans les colonnes où se trouve la valeur à ressortir,il est donc nécessaire de supprimer les N/A des colonnes I et J

    Vous pouvez peut être aussi tente:
    =SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="N/A";"";SOMME.SI.ENS(SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="GHK";$I$2:$I$241;Taxes!$J$2:$J$241);Taxes!$A$2:$A$241;B2;Taxes!$E$2:$E$241;D2;Taxes!$F$2:$F$241;E2))

    celle ci devrait fonctionner même avec les N/A, mais à partir de Excel 2007 suelement

    crdlmnt

    Ps après examen il semble que les conditions identiques se retrouvent plusieurs fois dans le tableau, ce qui va compliquer la formule, car pour l'instant elle fait le total des conditions identiques.. Pouvez vous confirmer
    Si c'est le cas il faut diviser par le nombre de conditions, et donc rajouter:
    /SOMMEPROD((Taxes!$A$2:$A$241=B2)*(Taxes!$E$2:$E$241=D2))
    ce qui donne:
    =SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="N/A";"";SOMMEPROD((Taxes!$A$2:$A$241=B2)*(Taxes!$E$2:$E$241=D2)*(Taxes!$F$2:$F$241=E2)*(SI(RECHERCHEV(A2;Taxes!K2:L241;2;0)="GHK";$I$2:$I$241;Taxes!$J$2:$J$241)))/SOMMEPROD((Taxes!$A$2:$A$241=B2)*(Taxes!$E$2:$E$241=D2)))

    Errare humanum est, perseverare diabolicum
    1. Contributeur
      Re
      utilisez plutôt le modèle de ce fichier qui est beaucoup plus simple
      attention a la méthode expliquée dans le fichier pour entrer la ,formule
      celle ci ne renvoie que la 1° valeur trouvée dans le tableau de taxes s'il y a plusieurs lignes qui correspondent et admet les N/A sans problème dans n'importe quelle colonne

      https://www.cjoint.com/?DArr35xkNWk

      crdlmnt
      1. Bonjour,
        Il y a une petite erreur à la fin de la formule: GHK au lieu de GQH.
        Ceux qui suivent auront rectifié d'eux-même.
      2. Contributeur
        Merci tontong, je donne dans ma spécialité,là, la faute de frappe. Ça ne s'arrange pas en 2014!
        merci surtout pour BILLING
        Au plaisir
    2. Bonjour

      Une solution avec macro
      Comme dit Vaucluse (salut à toi) celle ci ne renvoie que la 1° valeur trouvée dans le tableau de taxes s'il y a plusieurs lignes qui correspondent
      Ce qui pose quand même un problème!
      https://www.cjoint.com/?3Asj0cc8T5P

      Cdlmnt
      1. Merci à tous pour votre aide.

        Je dois repenser ma façon de faire voir même si c'est possible avec les données que mon rapport me donne.

        Comme dit Vaucluse et ccm81, j'ai des correspondances identiques avec des taux de taxes différents. Je connais le pourquoi de la chose mais je ne connais pas de solution rapide.

        Pas certaine de ce que je dois faire avec cette discussion maintenant. Ce n'est pas résolu car ce n'est vraiment possible pour l'instant.

        Qu'est-ce que je fais?
        1. Tu réfléchis!
          Pas de problème en ce qui nous concerne, tu peux reprendre la discussion dans ce fil quand tu auras trouvé comment traiter ce problème de "doublons", ou bien ouvrir une autre discussion, c'est à toi de voir.

          Cdlmnt
        2. Contributeur
          La solution serait probablement de détecter le critère qui pourrait différencier les lignes.

          Or si on filtre pour lister les valeurs identiques sur les trois critères dans la feuille Taxes dans son état actuel on constate que seule, la colonne code en D permettra de différencier les lignes.

          Vous pouvez le constater par exemple et entre autres en filtrant le tableau de Taxes sur:
          D en colonne A / 20 en colonne E et 0 en colonne F

          Ils ressort quand même 9 lignes, dont seuls le code est différent, avec:
          1717 / 1716 / A7115 / 1614 / 1514 / 1414 / 1313 / 1212 / 1111

          Mais comme la liste des N° de clients n'est pas complète, on peut imaginer qu'elle peut aussi servir à différencier les résultats

          Au cas où, il suffit de rajouter les critères dans la formule matricielle

          Bon courage, on reste à votre écoute