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

Autres XL2007 Enlever tirets et mettre en colonne

  • Initiateur de la discussion Initiateur de la discussion erics83
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

erics83

XLDnaute Impliqué
Bonjour,

Je souhaite mettre sous forme de colonne les éléments d'une série séparés par un tiret....:



la série en A1 est toujours sous ce format : un nom, un espace, un tiret, un espace, un nom, etc.....et j'aimerai récupérer les noms pour les mettre en colonne...

Merci pour votre aide,
 
Merci jmfmarques,
Merci chris,

C'es clair qu'à force de chercher des solutions, on oublie les choses simples....j'avais oublié d'utiliser ce chemin....(j'avais créé des séries de formules avec "trouve", mais j'avais des erreurs....)

Donc, comme je souhaite le faire en VBA, j'ai utilisé l'assistant et cela donne :

VB:
Application.CutCopyMode = False
    Selection.TextToColumns Destination:=Range("A3"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :="-", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
        1)), TrailingMinusNumbers:=True

En enlevant les "choses inutiles", on peut réduire à
Code:
Selection.TextToColumns Destination:=Range("A3"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, Tab:=True, Other:=True, OtherChar:="-", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True

Mais maintenant ma question est : mes séries ont parfois 5, 8, 10, 2 noms, etc....comment faire pour le
Code:
FieldInfo:Array(
, puisqu'il peut changer de format (=nombre de noms) ?

Merci pour votre aide,
 
Merci jmfmarques,

Effectivement, cela fonctionne sans....peut-on encore simplifier ?
Merci pour votre aide

Merci mutzik, je vais faire un tour pour voir comment je pourrais utiliser "split"
 
Merci à vous deux,
Et surtout merci à notre très cher Silkyroad qui explique très bien dans son tuto comment utiliser "split" et donc en l'adaptant à mon cas :
VB:
Tableau = Split(Feuil1.Range("A3"), "-")
et merci à mutzik pour la piste....top !

Merci pour votre aide,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
240
Réponses
4
Affichages
274
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…