Aide sur formule pour afficher une information précise

Bonjour,

Voici ma problématique par rapport au fichier joint : je souhaite que dans chaque ligne de la colonne C apparaissent les N° de commandes en totalité seulement séparées d'un tiret, c'est à dire dans l'exemple : 731-732-733. Est-ce possible via une formule ou autre ?

https://www.excel-pratique.com/~files/doc/JoL9taide.xls

Merci de votre aide.

Cdlt

Salut,

Si tu t'y connais un peu en macro, cette fonction créé par je ne sais plus qui sur ce forum (mais quelq'un de très bon....):

Function RechercheMultiples(ValeurCherchée As String, MatriceCherche, MatriceTrouve, Optional Separator As String) As String
Dim c, i As Long
If Separator = "" Then Separator = " "
For Each c In MatriceCherche
i = i + 1
If ValeurCherchée = c Then
If RechercheMultiples = "" Then
RechercheMultiples = MatriceTrouve(i)
Else
RechercheMultiples = RechercheMultiples & Separator & MatriceTrouve(i)
End If
End If
Next c
End Function

Elle répond exactement à ce que tu souhaites...

Pour l'utiliser:

Vas dans VBA puis dans un module et colle le code. (moi je l'ai mis dans mon classeur de macros personnelles, comme ça, je l'ai tout le temps à disposition)

Ensuite, vas dans la case où tu souhaites insérer ta formule.

Fais insertion/fonction

Puis choisis dans la liste déroulante "personnalisées" et choisis recherchemultiple.

Dans la fenêtre qui s'ouvre, tu as:

Valeur cherchée: indique soit 47, soit la cellule indiquant 47

MatriceCherche: selectionne la colonne des n° de clients

MatriceTrouve: selectionne la colonne des n° de commandes

Separateur: choisis le -

Voilà, tu as bien: 731-732-733 dans ta cellule.

C'est pas génial une fonction comme ça ??

J'attends ta réponse,

Souri84

Bonjour,

Merci pour l'aide mais quand j'applique votre méthode j'obtiens 731-731-732-733-733-733

au lieu de 731-732-733

Cdlt.

Ci-joint un fichier dans lequel j'ai créé une macro avec un USF.

Ouvre le fichier et enregistre le sur ton disque.

Ensuite, clique sur le bouton dans la feuille, entre le n° de client et effectue la recherche.

FICHIER JOINT

J'attends ta réponse,

Je l'ai fait en speed et pour un seul client, je verrais ce soir ou demain matin pour faire en sorte que tu puisses avoir plusieurs clients....

Souri84

Re,

ci joint un fichier.

Explication:

Enregistres le fichier sur ton ordi et ouvres le.

Ensuite, tu mets tes numéros de clients dans la colonne D:D à partir de D1.

Par exemple, 47 en D1, 48 en D2, 49 en D3....

Ensuite lance l'userform en cliquant sur le bouton démarrer présent dans la feuille et choisis le n° de client que tu souhaites.

La donnée que tu souhaites va apparaitre dans l'userform puis dans la colonne E en face de la valeur testée.

Clique sur un autre n° de client.... et tout se refait automatiquement....

Fichier joint

J'attends tes commentaires,

A+

Souri84

PS: si je ne suis pas clair, dis moi,

Bonjour,

Décidemment, je n'ai pas de chance !

Je mets 47 en D1 et VBA s'ouvre et m'annonce un message d'erreur :

Erreur de compilation : projet ou bibliotheque introuvable

Merci de votre aide.

Cdlt.

Salut,

Bizarre, car il fonctionne sur mon pc perso et pas sur mon pc pro....

J'ai déclaré une variable supplémentaire...

A essayer... là, ça marche sur mes 2 pc....

FICHIER JOINT

J'espère que ça va marcher chez toi...

Dis moi,

Souri84

Edit2: si par exemple tu as 2 commandes identiques, elles se suivent obligatoirement ou pas ? car là je viens de me rendre compte par exemple que pour la commande 49, si nous avons par exemple:

49 => 450

49 => 451

49 => 450

Alors ça mettra 450-451-450

Alors que si on a

49 => 450

49 => 450

49 => 451

Alors ça mettra bien 450-451....

Oups pardon erratum, il ya une derniere erreur !

VBA marche bien, pas de message d'erreur mais quand je mets en

D1 : 47

D2 : 48

D3 : 49

J'ai en collonne E

D1 : 731-732-733 --> la donnée est correcte

D2 : 731-732-733-731-741-742-744 --> j'ai 731-732-733 en trop

D3 : 731-732-733-731-741-742-744-732-733 --> j'ai 731-732-733-731-741-742-744 en trop

Merci

Salut,

Désolé, je n'avais pas vu ta réponse,

J'ai donc inséré un tri automatique à l'ouverture de l'userform....

ici le fichier

Tant mieux si ça marche.

Si tu as des soucis, dis moi,

A+

Souri84

Edit2: oui, j'ai corrigé également l'erreur dont tu viens de faire part, les commandes en trop... c'est qu'a chaque fois, j'oubliais d'effacer les données de la commande suivante dans l'userform...

Edit3: Là, normalement, c top....

Merci beaucoup tout est ok maintenant (j'espere) !!

Décidemment !!

Autre souci quand je mets un N° de client à 6 chiffres (ex 477239) et un N° de commande à 7 chifrres (ex :7242902)

J'ai encore un message d'erreur :

Erreur d'execution '6' :

Dépassement de capacité

Merci de votre aide

J'ai répondu à ton mp:

remplacer la variable

dim client as integer

par

dim client as string

J'attends ta réponse,

Souri84

Cette fois c'est ok et pour de bon !

Merci

Rechercher des sujets similaires à "aide formule afficher information precise"