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

remplacer virgule par nouvelle cellule

  • Initiateur de la discussion Initiateur de la discussion Gunther
  • 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 !

Gunther

XLDnaute Nouveau
Bonsoir tout le monde,

J'ai accepté une "mission" pour un ami que je commence a regretter ^^

Il m'a donné une liste de Milliers mots,
et je lui ai proposé de mettre chaque mot dans une cellule différente...

Je m'attendais a trouver ça dans le forum ou google et en fait... Pô trouvé !

Donc mon problème,

j'ai une ligne dans laquelle il y a des mots
exemple :
"abaissable, abaissante, abaissasse, abaissâmes,..."

Tous ces mots sont séparés par ", " (virgule espace)

Et je n'ai pas trouvé le moyen de remplacer ", " par changement de cellule

afin que cela donne

abaissable
abaissante
abaissasse
abaissâmes

Avez-vous une solution ?

Merci a vous tous !
 
Re : remplacer virgule par nouvelle cellule

Bonsoir,

Avec ton texte en B1, cette formule en A1 :

Code:
=STXT(", "&$B$1&",";TROUVE("µ";SUBSTITUE(", "&$B$1;",";"µ";LIGNE()))+2;TROUVE(
"¤";SUBSTITUE(SUBSTITUE(","&$B$1&",";",";"µ";LIGNE());",";"¤";LIGNE()))-TROUVE(
"µ";SUBSTITUE(", "&$B$1;",";"µ";LIGNE()))-1)

à recopier vers le bas autant de fois que nécessaire.

à la fin de la liste, on obtient des #VALEUR! qu'on pourrait traiter par un test.

@+
 
Re : remplacer virgule par nouvelle cellule

Bonsoir Gunther, Tibo, bonsoir le forum,

Une solution VBA dans le fichier en pièce jointe avec la macro ci-dessous :
Code:
Sub Macro1()
Dim cel As Range 'déclare la variable cel (CELlule)
Dim dest As Range 'déclare la variabe dest (DESTination)
Dim tm() As String 'décalre le tableau de variables indexées tm (Tableau de Mots)
Dim x As Integer 'déclare la variable x
 
For Each cel In Sheets("Feuil1").UsedRange 'boucle 1 : sur toutes les cellules renseignées cel de l'onglet "Feuil1"
    Set dest = Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0) 'définit la cellule de destination
    tm = Split(cel.Value, ", ", -1) 'définit le tableau des mots
 
    For x = 0 To UBound(tm) 'boucle 2 sur tous les mots du tableau
        dest.Offset(x, 0) = tm(x) 'place le mot du tableau en le décalant d'une ligne à chaque mot
    Next x 'prochain mot du tableau de mots
 
Next cel 'prochaine cellule de la boucle 1
End Sub
La macro décompose les mots des cellules de l'onglet Feuil1 dans les cellules de l'onglet Feuil2...
 

Pièces jointes

Dernière édition:
Re : remplacer virgule par nouvelle cellule

Merci Tibo, Robert !

C'est vraiment nickel !!!

Je vais utiliser le fichier de Robert (merci de m'avoir mâché le travail)
Merci aussi a Tibo ^^

Vous assurez !

Bonne Nuit !

PS (Sa satanée liste fait plus de 25000 mots) non non, j'me suis pas trompé dans le compte ^^
 
Dernière édition:
Re : remplacer virgule par nouvelle cellule

Bonjour salut Tibo et Robert,

Il y a aussi :
Sélectionner la colonne
Menu Outils - Convertir
Délimité - Suivant - cocher "virgule" - Terminer
Sélectionner toute la plage
Menu Edition - Remplacer
Rechercher : espace
Remplacer par : rien (laisser vide)
Remplacer tout.
 
- 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

  • Question Question
Microsoft 365 VBA
Réponses
2
Affichages
596
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…