Classer des noms de dossier dans une chaine de caractere VBA

Bonjour à tous ,

Je construis une string en concaténant différents dossiers avec le descriptif.

Mais j'aimerais rassembler au fur à mesure les numéros de dossier séparés par une virgule pour les descriptifs identiques.

Y a t-il un traitement rapide en VBA ?

ex:

String="D123456: descriptif1

D254673: descriptif2

D264785: descriptif1"

après traitement

String= "D123456, D264785: descriptif1

D254673: descriptif2"

Bonjour et sur le forum

Il me vient à l'esprit l'utilisation d'une collection et de la fonction Split pour ton exemple, mais pourrais-tu fournir un fichier exemple pour que je puisse essayer de coder ça rapidement?

Ps: une collection permet de collectionner des éléments, que l'on peut plus tard appeler par "clé", c'est plus pratique qu'un tableau dans le sens où tu ne te soucies pas de savoir où se trouve l'information, pas besoin de numéro de ligne, juste de la clé, la fonction split sépare des valeurs en retournant un tableau, Split("test,bonjour,pomme",",") donnera le tableau ("test","bonjour","pomme")

Merci.

Une collection a combien de dimensions ? A t-elle une taille à définir ?

Bonjour,

L'avantage d'une collection, c'est que tu n'as pas à t'embêter avec les dimensions, pour ajouter un élément tu utilises simple la méthode .Add, et .Remove pour enlever un élément, une collection n'a que des lignes, pas de colonnes, mais ça ne dérangera pas ici, tu as juste besoin de lignes pour stocker les codes D, et éventuellement une collection ou un tableau pour stocker le descriptif je suis entrain de me dire... Ou bien utiliser carrément un objet Dictionnary, qui diffère légèrement d'une collection, mais avec plus de possibilités, tu peux tester qu'un élément existe, tu peux obtenir la liste des clés de ton dictionnaire, etc...

Rechercher des sujets similaires à "classer noms dossier chaine caractere vba"