Excel - INDEX/EQUIV blocage [Résolu/Fermé]

Messages postés
4
Date d'inscription
lundi 26 février 2018
Statut
Membre
Dernière intervention
27 février 2018
-
Bonjour à tous,

Je dispose d'un onglet "prérequis_clients" disposant de 3 colonnes (range H11 à L150) : Nom Client | Prérequis | Prioritaire?

Nom client = chaîne de caractères
Prérequis = chaîne de caractères
Prioritaire = chaîne de caractères ("oui" ou vide pour non)

J'alimente ce tableau via des maccros et invites utilisateurs qui fonctionnent convenablement.
Ce tableau est classé dans l'ordre alphabétique des clients.

Sur mon premier onglet "fiche clients", je souhaiterais récupérer ces informations dès lors que la valeur de la cellule A1 contient le nom du client.
Cette cellule est automatiquement alimentée par un tcd (non modifiable) et est sous la forme XXXXX-NomDuClient (valeur numérique correspondant au n° commande).

Les informations "Prioritaire?" et "Prérequis" sont stockés à partir de J11 et L11 (et +1 pr les autres clients).

Pour récupérer les prérequis : =SIERREUR(INDEX(Prérequis_Clients!$H$11:L150;EQUIV(A1;Prérequis_Clients!$H$11:$H$150;0);3);"")

Pour récupérer l'information si le client est prioritaire ou non :
=SIERREUR(INDEX(Prérequis_Clients!$H$11:L150;EQUIV(A1;Prérequis_Clients!$H$11:$H$150;0);5);"")

Mon problème : Vu que ma cellule en A1 est sous la forme XXXXX-NomDuClient et que cela ne correspond pas EXACTEMENT au nom du client de mon onglet "prérequis_clients", cela ne fonctionne pas.

J'arrive via la fonctionne rechercheV à récupérer les valeurs approximatives mais je pense qu'il y a mieux...
=RECHERCHEV(A1&"*";Prérequis_Clients!H11:L150;3;)

J'aurais souhaité conservé la fonction INDEX/EQUIV mais en testant le contenu de ma cellule cible. Chose que je ne sais pas faire.

Pourriez-vous m'aiguiller pour solder ce problème ?

En vous remerciant par avance.

En top l'onglet 2, en bot l'onglet 1.



Dimqz
Afficher la suite 

1 réponse

Messages postés
24607
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
18 octobre 2019
4836
0
Merci
Bonjour
votre image ne correspond pas à grand chose. Je pense qu'il y a une incohérence dans vos explications:
vous dites que EQUIV ne fonctionne pas parce qu'à priori si on vous lit bien, le texte en A1 est plus long que le nom client dans le champ "Prérequis_Clients!$H$11:$H$150"

ensuite, vous nous dites que ça fonctionne "un peu" avec RECHERCHEV(A1&"*"...., ce qui voudrait dire que le texte en A1 est plus court que celui de la colonne H?

Pouvez vous préciser ça?

Selon la 'explication sur INDEX(EQUIV, j'aurais tendance à vous dire essayez en remplaçant A1 par:
STXT(A1;TROUVE("-";A1)+1;50) pour retrouver le nom du client seul, _si vos noms clients ne dépassent pas 50 caractères, sinon, à rectifier
ou si besoin:
..........EQUIV("*"&STXT(A1;TROUVE("-";A1)+1;50)&"*";..........

à vous lire

crdlmnt

Vaucluse
Messages postés
24607
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
18 octobre 2019
4836 -
Alors c'est probablement que vos écritures ne correspondent pas; que donne la formule seule:
STXT(A1;TROUVE("-";A1)+1;50)
sur quelques lignes par comparaison avec votre liste de la base de données?
vous pouvez aussi vérifier le résultat avec:

=NB.SI(liste de la base;cell texte)

sinon, sans le fichier, ça va être difficile à gérer
à vous lire
crdlmnt
dimqz
Messages postés
4
Date d'inscription
lundi 26 février 2018
Statut
Membre
Dernière intervention
27 février 2018
-
Bonjour,

pourtant votre formule fonctionne bien.

Mon identifiant client actuel : "45555 - test01"
STXT(A1;TROUVE("-";A1)+1;50) me renvoit : test01
Vaucluse
Messages postés
24607
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
18 octobre 2019
4836 -
Alors un petit souci, il y a un blanc derrière le tiret qui fait que les textes ne correspondent pas

essayez avec:
..........EQUIV(SUPPRESPACE(STXT(A1;TROUVE("-";A1)+1;50));......

sans les"*"&.....&"*" pour commencer, à rajouter ensuite si ça ne donne rien

voila un modèle avec des blancs ou sans blanc et même avec plusieurs encadrant le tiret pour voir ce que ça donne (voir feuille Edition par rapport à feuille base
https://mon-partage.fr/f/l7ShhR5v/

et revenez si ça ne va toujours pas

crdlmnt
dimqz
Messages postés
4
Date d'inscription
lundi 26 février 2018
Statut
Membre
Dernière intervention
27 février 2018
-
cela fonctionne merci beaucoup !
Vaucluse
Messages postés
24607
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
18 octobre 2019
4836 -
Pas de quoi,
Pour la bonne forme j'ai retiré le lien vers votre fichier
bonne route
crdlmnt