Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

Bonsoir,

Désolé pour hier... Je n'ai pas reçu de notification ou autre par rapport à une réponse..

Et d'ailleurs, j'ai finalement trouvé la réponse en me tirant les cheveux..
 

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é...
 

OOLIVE

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

Merci de ta solution.. Tu m'as d'ailleurs fais revoir les bases.. En effet, les valeurs ne sont pas comme je le pensais.. En effet, il y a des espaces à différents endroits..
 

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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…