Convertir le texte d'une cellule en plusieurs lignes

Bonjour,

J'aimerais savoir comment on sépare du texte d'une cellule en 2 cellules.

J'ai utilisé l'onglet données-convertir seulement j'obtiens des colonnes et non des lignes comme j'aimerais avoir .

Un exmple pour eclaircir :

J'ai des cellules ou il y a

A et B dans la meme cellule et Cet D dans la meme cellule à coté droite.

Je veux sur une meme ligne A et C dans deux cellules séparées et sous la ligne du dessous B et D dans une meme ligne dans deux cellules séparées.

J'espére etre clair !!!

Merci d'avance

Bonjour et bienvenue

cyr.il10 a écrit :

J'espére etre clair !!

Pas vraiment ...

Un essai :

1'822cyr-il10.zip (9.01 Ko)

Si pas ça, merci de joindre un fichier avec ce que tu as et ce que tu veux.

Amicalement

Nad

je vois que s'était suffisamment clair !; c'est tout à fait ça

Je te remercie

bonne journée

Bonjour,

En admettant que AB soit en cellule A1 et CD en cellule B1 :

En A2:

=STXT(A1;1;1)

En B2:

=STXT(A1;2;1)

En A3:

=STXT(B1;1;1)

En B3:

=STXT(B1;2;1)

mais j'avoue que sans fichier ce n'est pas évident de vraiment proposer quelque chose de concret.

Cordialement.

Oui en fait je mets un fichier pour etre beaucoup plus clair

Voici vraiment ce que je veux diviser

533cyr-il10-v2.zip (11.59 Ko)

Hum, C'est déjà différent, il y a plus de deux textes par cellules, avec plusieurs espaces... :-/

les longueurs des valeurs sont toujours les mêmes ? Ou cela peux varier à chaques fois ?

Cordialement.

Les longueurs des valeurs sont variables

Bonsoir,

Peut-être par macro????

Le code :

Sub Eclate()
Dim Cel As Range
Dim X
For Each Cel In Range("B10:C10")
    X = Application.Transpose(Split(Cel, Chr(10)))
    Cel.Offset(1).Resize(UBound(X)) = X
Next Cel
End Sub

Le fichier :

504cyr-il10-v3.zip (15.63 Ko)

Bonne soirée

Re

Par formules (adaptation d'une formule de Thibo) :

Pour le 1er mot (en B13 - A tirer en C13) :

=GAUCHE(B$10;TROUVE("µ";SUBSTITUE(B$10;CAR(10);"µ";1))-1)

Pour les autres mots (en B14 - A tirer vers le bas puis en colonne C) :

=SI(LIGNES($1:1)>NBCAR(B$10)-NBCAR(SUBSTITUE(B$10;CAR(10);""));"";STXT(B$10;TROUVE("µ";SUBSTITUE(SUBSTITUE(B$10&CAR(10);CAR(10);"µ";LIGNES($1:1));CAR(10);"¤";LIGNES($1:1)))+1;TROUVE("¤";SUBSTITUE(SUBSTITUE(B$10&CAR(10);CAR(10);"µ";LIGNES($1:1));CAR(10);"¤";LIGNES($1:1)))-TROUVE("µ";SUBSTITUE(SUBSTITUE(B$10&CAR(10);CAR(10);"µ";LIGNES($1:1));CAR(10);"¤";LIGNES($1:1)))-1))

Nad

bah la vache , je suis scotché

merci

-- 05 Juil 2011, 14:03 --

c'est puissant la macro , merci cousinhub

-- 05 Juil 2011, 14:29 --

J'ai compliqué un peu la tache car je vois que c'est facile pour plusieurs d'entre vous

j'ai renvoyé un fichier joint ou je veux etendre sur totue ma plage de données

434cyr-il10-v3.zip (19.45 Ko)

Re-,

Effectivement, on n'est plus tellement dans l'énoncé initial.....

Regarde le fichier joint

le code :

Sub Eclate2()
Dim Cel As Range
Dim ColA, ColB, ColC, ColD, ColE
Dim I As Byte, J As Byte
Application.ScreenUpdating = False
For Each Cel In Range("A26:A" & [A65000].End(xlUp).Row)
    ColA = Split(Cel, Chr(10))
    ColB = Split(Cel.Offset(, 1), Chr(10))
    ColC = Split(Cel.Offset(, 2), Chr(10))
    ColD = Split(Cel.Offset(, 3), Chr(10))
    ColE = Split(Cel.Offset(, 4), Chr(10))
    With Sheets("Feuil2")
        For I = LBound(ColA) To UBound(ColA)
            .Range("A65000").End(xlUp)(2).Resize(UBound(ColD) + 1) = ColA(I)
            .Range("B65000").End(xlUp)(2).Resize(UBound(ColD) + 1) = ColB(I)
            .Range("C65000").End(xlUp)(2).Resize(UBound(ColD) + 1) = ColC(I)
            For J = LBound(ColD) To UBound(ColD)
                .Range("D65000").End(xlUp)(2) = ColD(J)
                .Range("E65000").End(xlUp)(2) = ColE(J)
            Next J
        Next I
    End With
Next Cel
End Sub

le fichier :

167cyr-il10-v4.zip (21.06 Ko)

Bonne soirée

Bonjour,

Merci pour ces réponses, elles correspondent exactement à mes besoins, mais les formules ne fonctionnent pas dans mon cas...J'ai une version 2013 et mes données sont les suivantes:

J'ai 5 données dans la cellule C5 et j'aimerais les mettre en C5, C6,C7, C8 et C9

Ensuite j'aurai besoin des 3 informations qui sont dans ma cellule C6 actuelle, de se retrouver en C10,C11 et C 12

et ainsi de suite.

Pour les séparer, j'utilise le bouton Convertir avec largeur fixe (C'est une nouvelle fenetre qui apparait) Mais rendu où je dois écrire la formule de destination, je n'y arrive pas.

Merci de m'aider cela m'aiderait tellement si je pouvais y arriver!

Rechercher des sujets similaires à "convertir texte lignes"