RECHERCHEV plusieurs conditions

Bonjour,
Dans ma formule ci-dessous, on me dit qu'il y a trop de conditions, comment puis-je faire pour la réduire cette formule :

=SI(N4="T1";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T2";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T3";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T4";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T5";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T6";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="T7";RECHERCHEV(N4;Paramètres!S3:T38;2;);SI(N4="Privé";RECHERCHEV(K4;Paramètres!S3:T38;2;);SI([@[N° tel]];"FAUX";"")))))))))

J'ai pensé à mettre T1, T2, T3, T4, T5, T6 et T7 (il s'agit de texte et non des noms de cellules) mais je ne trouve pas la solution.

Ce que je recherche dans la colonne O c'est que si dans la colonne N il y a écrit Privé c'est le numéro de téléphone privé de la personne (colonne K) qui s'affiche, si c'est marqué T1, T2, T3, T4, T5, T6 ou T7, c'est le numéro de ce téléphone qui s'affiche.
Je ne peux et veux pas mettre le T1, T2, T3, T4, T5, T6 ou T7 dans la colonne K, car j'ai besoin de garder le nom de la personne.
Et si la colonne N n'a rien, rien ne s'affiche.

Merci d'avance

Bonjour,

Tu ne peux pas imbriquer plus de 7 conditions SI les unes dans les autres, il faut trouver une alternative comme :

=SI(N4="Privé";K4;SI(GAUCHE(N4;1)="T";RECHERCHEV(N4;Tableau10;2;FAUX);""))

Je regarde le premier caractère de N4, si c'est T alors je fais ma RECHERCHEV.

Bonne journée !

Bonjour,

Je me demandais aussi quel était la différence entre toutes ces conditions formule T1 T2 T3 .... idem sauf si "Privé"

Si j'ai bien compris on peut aussi faire :

=SI(N4<>"";SI(N4<>"Privé";RECHERCHEV(N4;Paramètres!$S$4:$T$39;2;FAUX);RECHERCHEV(K4;Paramètres!$S$3:$T$38;2;FAUX));"")

Bonjour à tous

Sur 2007 et + on peut imbriquer 64 niveaux et non plus 7 mais le problème n'est pas là

D'abord il y a une référence circulaire puisque la fin de la formule teste le résultat de la cellule qui la contient

Ensuite les fonctions RECHERCHEV doivent utiliser le 4ème argument FAUX ou 0, oublié ici

Ensuite si tu cherches sur une plage, la plage doit être en références absolues ce qui n'est pas fait ici mais en plus ici la plage est un tableau structuré donc la formule devrait être non pas

RECHERCHEV(N4;Paramètres!S3:T38;2;)
ni même 
RECHERCHEV(N4;Paramètres!$S$3:$T$38;2;0)
mais
RECHERCHEV(N4;Tableau10;2;0)

Quand on utilise des tableaux structurés on ne garde pas les noms automatiques on leur donne des noms signifiants

Mais plus grave, cette recherche est incohérente :

  • en dehors de Privé on cherche toujours dans le même tableau donc on pourrait simplifier
  • si un mécanicien nommé A a un et un seul numéro de téléphone de type T et un seul numéro privé, c'est le nom qu'il faut chercher dans une liste contenant 2 colonnes de numéros de téléphone, l'une pour T l'autre pour privé

Merci pour l'info 78chris ! Je m'en vais de ce pas imbriquer mes 64 fonctions

RE

Merci pour l'info 78chris ! Je m'en vais de ce pas imbriquer mes 64 fonctions

J'ai répondu il y a peu, ici ou ailleurs, qu'au delà de 3 niveaux on peut commencer à chercher une autre piste et qu'au delà de 5 on doit trouver une autre piste

Donc laisse tomber l'escargot, lol

Merci à tous pour votre aide.

@78Chris : les T1 à T7 sont des numéros qui peuvent être attribué à tout le monde, donc c'est pas aussi simple, mais grâce à tous, j'ai trouvé la solution.

Rechercher des sujets similaires à "recherchev conditions"