explique moi cette formule de recherche

  • Initiateur de la discussion Initiateur de la discussion fouad
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

fouad

Guest
=SI(ESTNA(SI(D2="";"";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0))));"Enexistant";SI(D2="";"";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0))))


merci
 
Re : explique moi cette formule de recherche

=SI(ESTNA(SI(D2="";"";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0))));"Enexistant";SI(D2="";"";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0))))
Il me semble déjà que cette formule est quelque peu alambiquée...
Je la vois plutôt comme ceci
Code:
=SI(D2="";"";SI(ESTNA(INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0)));"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0))))
Alors on explique
Code:
=SI(D2="";""
si D2 est vide on ne teste pas le reste de la formule et on ne renvoie rien...
Code:
SI(ESTNA(INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0)));"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0))))
...sinon on cherche D2 dans la plage B2:B127 de la feuille "Tiers" et si l'on trouve on renvoie la valeur de la cellule correspondante de la plage J2:J127, sinon on indique "Inexistant
Voili

Ici comme partout on dit bonjour, s'il vous plait, merci !!!!


A+
kjin
 
Re : explique moi cette formule de recherche

Bonjour à toi aussi Fouad,
Bonjour kjin,
sans fichier pour tester, difficile de comprendre mais a priori j'écrirai la formule plutôt de la manière suivante (non testée) :
Code:
=SI(D2="";"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0))
puisque tu testes D2 dans EQUIV, tu n'as pas besoin de tester si D2 est vide (tu ramènes ""), puis de le tester à nouveau et de noter "inexistant" si EQUIV ne ramène pas la position de D2...
A+
 
Dernière édition:
Re : explique moi cette formule de recherche

Bonjour fouad est bienvenue parmi nous;
Salut kjin & david84;
Bonjour à toutes et à tous.

J'ai le plaisir de remercier kjin & david84 pour le remplacement noté dans leurs codes de « Enexistant » par Inexistant,

Après test des codes proposés par :

david84

PHP:
=SI(D2="";"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(Recherche!D2;Tiers!$B$2:$B$127;0)

Si, la valeur exacte recherchée de "D2" est inexistante dans la plage de la feuille nommée Tiers "Tiers!$J$2:$J$127", le résultat renviera une valeur d’erreur #N/A (valeur non disponible).

D’où le code nécessitera l’intégration de la fonction ESTNA, qui permettra de vérifier la valeur non disponible #N/A.

kjin

Il me semble, qu'il suffit de tester la position cherchée de "D2" dans la plage "Tiers!$B$2:$B$127".

Solution proposée

PHP:
=SI(ESTNA(EQUIV(D2;Tiers!$B$2:$B$127;0));"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0)))

Le code proposée s'explique comme suit:

Si la vérification de la valeur de la position exacte de D2 dans la plage nommée Tiers!$B$2:$B$127 "EQUIV(D2;Tiers!$B$2:$B$127;0)" est non disponible (#N/A), la solution affichera « Inexistant », dans le cas échéant (valeur disponible), il renviera une référence à une valeur provenant de plage Tiers!$J$2:$J$127 .

La seule préoccupation au présent problème est ; comment faire pour D2 lorsqu’il est vide ?

Bonne lecture et de courage.

Amicalement.

BCharef
 
Re : explique moi cette formule de recherche

Bonjour à tous les intervenants de ce fil,

En reprenant la formule de Rachid, un peu plus court :

Code:
=SI(NB.SI(Tiers!$B$2:$B$127;D2)=0;"Inexistant";INDEX(Tiers!$J$2:$J$127;EQUIV(D2;Tiers!$B$2:$B$127;0)))

Le principe : Traiter la cause du problème (valeur présente 0 fois) plutôt que la conséquence (éviter le #N/A)

@+
 
Re : explique moi cette formule de recherche

Re bonjour fouad, kjin & david84,
Salut Tibo,
Re bonjour à toutes et à tous.

Un autre code plus court de la part de notre ami Tibo, qui permet d'éviter l'utilisation de la fonction ESTNA().

Salutations distinguées.

BCharef
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
379
Réponses
15
Affichages
791
Retour