Traitement d'une chaîne de caractère

OOLIVE

XLDnaute Occasionnel
Bonsoir à tous,

Est ce quelqu'un pourrait me filer un coup de main sur le traitement d'une plage de données ?

En effet, je cherche à divisé les cellules de la colonne D en plusieurs colonnes.. Je m'explique.

Dans ma colonne D, j'ai des informations plus ou moins lourdes à traiter (chaîne de caractère) qui se présentent toujours de la manière:

LLMejrtbrej /FRMhefiozhfz /EIDsfhzeufhi/ierg/ DTMgef

Le nombre de caractère entre les "/" varie toujours mais commence toujours par "LLM","FRM","EID","DTM"

Du coup, j'aimerais avoir une macro qui amène au résultat suivant :


ColonneE : LLMejrtbrej
ColonneF: FRMhefiozhfz
ColonneG : EIDsfhzeufhi/ierg
colonneH : DTMgef

Quelqu'un a-t-il déjà été confronté à ce besoin là ? Quelqu'un peut-il m'aider tout simplement :) ?

Merci par avance à tous.
 

OOLIVE

XLDnaute Occasionnel
Re : Traitement d'une chaîne de caractère

Gillus,

Merci de te pencher aussi sur mon cas.. Pour le moment, j'ai testé uniquement avec des formules (stxt) mais cette étape serait à intégrer à une macro.. D'où la raison pour laquelle j'aimerais l'avoir en VBA :)

Le problème en plus et qu'à chaque fois que je divise la colonne, je me retrouve avec trop d'informations (je ne sais pas comment supprimer l'information déjà traitée..)
 

OOLIVE

XLDnaute Occasionnel
Re : Traitement d'une chaîne de caractère

Merci Joss,

J'avais pensé à un code avec les "/".

Le problème étant que des "/" peuvent intervenir dans des chaines et que cette dernière ne doivent être coupées. Je m'explique ^^

Ce sont les "LLM", "FRM", "EID" et "DTM" qui doivent être l'élément à prendre en compte pour la division en plusieurs colonnes et non les "/"
 

Staple1600

XLDnaute Barbatruc
Re : Traitement d'une chaîne de caractère

Bonsoir à tous

Tout comme Gillus69, je milite pour un solution possible sans macros ;)
Notamment en utilisant Données/Convertir/Délimité/ Séparateur : [x] Autre : /
ou alors Séparateur : ESPACE (si la chaine est bien de type:
LLMejrtbrejESPACE/FRMhefiozhfzESPACE/EIDsfhzeufhi/ierg/ESPACEDTMgef

On peut aussi imaginer au préalable un Edition/Remplacer ESPACE/ par $ puis utilisation de Données/Convertir avec comme séparateur $
 

Vilain

XLDnaute Accro
Re : Traitement d'une chaîne de caractère

Salut Staple, content de voir que tu es toujours fidèle au poste ! (je réalise ça après une longue absence de ma part)
je reconnais bien là le militant formuliste que tu es ;)
Je suis comme ça aussi (surtout car je suis un peu moins nul en formule qu'en vba...)

à plus

ps : oups, je n'ai pas fait avancé le problème... désolé...
 

laurent950

XLDnaute Accro
Re : Traitement d'une chaîne de caractère

Bonsoir,

Peux être comme cela aussi

Sub Click()

For i = 1 To Cells(Cells(65536, 1).End(xlUp).Row, 1).Row
For j = 0 To UBound(Split(Cells(i, 1), "/"))
Cells(i, j + 3) = Trim(Split(Cells(i, 1), "/")(j))
Next j
Next i

End Sub
 

Discussions similaires