J'ai essayé d'apporter ma touche sans succès car je voudrais complexifier un peu la formule afin de la rendre plus jute pour mon projet.
Je voudrais différencier les lignes où dans la première colonne il y ai marqué "LTD" et les autres sans modifier le résultat si il y la marque avant.
Exemple joint.
Suivant ton nouveau fichier quand il y a une marque plus LTD on veut le resultat marque plus modele
Si on a par exemple Marque plus France et que dans le modele on a marque + modele on garde marque plus modale par contre si dans modele on a que le model dans ce cas la on prend marque + France +modele
je me pose la question pour par exemple BMW motor dans ce cas on traite comme LTD ? si oui il faudrait la liste du genre LTD et / ou la liste du genre France
cela c'est pour essayer d'éviter de s'y remettre en 50 fois
En fait je prend l'exemple de voiture car je c'est plus courant que sur quoi je travaille et je tiens avant d'appliquer la formule à la comprendre afin de l'appliquer à mon fichier car je tiens avant tout à apprendre.
le LTD est un exemple de ce que je peux retrouver en récurant après le nom du constructeur dans mon fichier mais je peux avoir des noms de constructeurs sans LTD mais qui peuvent avoir un nom composé.
La formule actuelle supprime automatiquement ce qui y a après le nom du constructeur hors si j'ai un nom composé sans LTD je veux garder le nom entier.
Je remets un exemple plus clair.
Voyez le fichier joint avec utilisation de cette fonction VBA :
Code:
Function CONCAT(t As String) As String
Dim d As Object, s, i%
Set d = CreateObject("Scripting.Dictionary")
s = Split(UCase(t))
For i = 0 To UBound(s)
If s(i) <> "LTD" Then d(s(i)) = ""
Next
If d.Count Then CONCAT = Join(d.keys)
End Function
Le code doit impérativement être placé dans un module standard.
Notez qu'en colonne A j'ai remplacé TOTOYA par TOYOTA...