Remplacer un "." par un retour chariot

Bonjour.

Je galère à trouver une info sur internet.

J'ai réaliser un export de mon site en format excel.

Jusque là tout va bien.

Mais j'ai un champ qui contient une description.

Sur mon site il y a des retour à la ligne après les points ".".

J'aimerais que dans ma colonne, chaque point renvoie à la ligne dans la même cellule (c'est en vue d'un import dans Indesign) ?

Mais bien sûr, sans supprimer les points.

Au lieu d'avoir :

"blabla. Tralala."

J'aimerais avoir :

"blabla.

tralala."

Merci !

Bonjour Koi,

je te propose ce fichier Excel :

150exo-koi.xlsm (13.14 Ko)

Ctrl e ➯ travail effectué !


Alt F11 pour voir le code VBA, puis revenir sur Excel

si besoin, tu peux demander une adaptation.

merci de me dire si ça te convient.

dhany

bonjour

salut au passage dhany

je pense que tu veux scinder tes lignes contenant des points en 2 lignes

c'est un job pour Power Query (qui sait aussi faire des milliers de choses en cie qui concerne la préparation d'un fichier xls, csv et bien d'autres formats)

joins un fichier exemple d'export et un exemple de ce que tu cherches

Ca fonctionne parfaitement ! Merci !

On peut l'appliquer automatiquement à toute une colonne ?

merci pour ton retour ! pour appliquer à toute une colonne : oui, c'est tout à fait possible, et même facilement.

si tu m'envoies un fichier Excel avec quelques exemples fictifs (pas de données confidentielles), je pourrai te le faire.

pour joindre un fichier, utilise le bouton « Ajouter des fichiers » situé juste sous la fenêtre d'édition du post.

dhany

Voici le fichier contenant la colonne que je souhaite reformater.

29exemple.xlsx (108.18 Ko)

ben dis donc ! j'te demande un fichier avec quelques exemples et toi tu m'envoies un fichier de 118 Ko et 3 787 lignes !!!

en plus, si j'te répond avec autant d'retard, c'est pa'c'qu'y'avait plusieurs difficultés à régler ; mais voilà, c'est fait :

69exemple.xlsm (117.52 Ko)

fais Ctrl e ... puis patiente environ une minute : ça cuit pas tout d'suite !

merci de me dire si t'as apprécié ton repas.

dhany

Very good ! Merci encore !

Effectivement j'ai copié collé la colonne sans regarder ce que je mettais

merci pour ton retour ! bonne continuation !

dhany

Je peux faire mon chieur ?

Dans les cellules reformatées, j'ai des lignes vides (doubles retours de ligne).

Ca peut se supprimer facilement ? (genre rechercher remplacer)

Salut chi..., euh pardon, Koi,

Salut l'équipe,

à part les lignes 38, 39, 43 et 47 où il reste une ligne vide en début de cellule, et pour lesquelles je ne trouve pas de solution, ça devrait le faire.

For x = 1 To UBound(tData, 1)
    tData(x, 1) = Trim(tData(x, 1))
    If tData(x, 1) <> "" Then
        Do While Asc(Left(tData(x, 1), 1)) < 33 Or Asc(Left(tData(x, 1), 1)) > 122
            tData(x, 1) = Trim(Right(tData(x, 1), Len(tData(x, 1)) - 1))
        Loop
        tData(x, 1) = Trim(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(CStr(tData(x, 1)), Chr(10), ""), _
            Chr(160), ""), "  ", " "), "   ", " "), "    ", " "), ". ", "." & Chr(10) & ""), "! ", "!" & Chr(10) & ""), "? ", "?" & Chr(10) & ""), Chr(10) & Chr(32), Chr(10)))
        Do While Asc(Right(tData(x, 1), 1)) < 33 Or Asc(Right(tData(x, 1), 1)) > 122
            tData(x, 1) = Trim(Left(tData(x, 1), Len(tData(x, 1)) - 1))
        Loop
    End If
Next

A+

7trucdeouf.xlsm (219.19 Ko)

@Koi

tu a écrit :

Dans les cellules reformatées, j'ai des lignes vides (doubles retours de ligne).

Ça peut se supprimer facilement ?

si, si, très facilement ! allez, t'as d'la chance :

ça m'a pris un très long moment, mais c'est fait ici :

15exemple.xlsm (118.90 Ko)

utilisation identique : fais Ctrl e, puis patiente encore un p'tit peu plus qu'avant (juste un chouïa)

ben oui, vu qu'y'a un p'tit job supplémentaire, c'est normal qu'ça mijote un peu plus !

"en attendant, tu peux regarder ici ton pseudo :"
screen

(c'est un bonus pour ma sub dégrisante)

dhany h-animaux37

Bonjour curulis57, Koi, le forum,

screen 1

le nom de ton fichier, c'est à propos du fichier exemple de Koi ?

à propos de la solution que tu lui propose ?

ou peut-être les deux à la fois ?


dans ton code VBA, j'apprécie particulièrement cette ligne :

tData(x, 1) = Trim(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(CStr(tData(x, 1)), Chr(10), ""), _
    Chr(160), ""), "  ", " "), "   ", " "), "    ", " "), ". ", "." & Chr(10) & ""), "! ", "!" & Chr(10) & ""), "? ", "?" & Chr(10) & ""), Chr(10) & Chr(32), Chr(10)))

whaouh ! j'le crois pas : pas moins de 9 Replace() d'affilée ! (tu fais pas dans la dentelle, hein ? )

alors oui, là, j'dois franchement reconnaître que rien qu'de c'point d'vue-là, t'as très bien choisi le nom d'ton fichier !

j'adore aussi ton « remplacer 2 espaces par un seul », « remplacer 3 espaces par un seul », « remplacer 4 espaces par un seul » ; euh, et si y'a 5 espaces ou plus ? ah oui, alors encore un coup d'cuillère à pot : « et 5 espaces par un seul », « et 6 espaces par un seul », « et 7 espaces par un seul » : ça fera 3 Replace() de plus, donc en totale adéquation avec le nom du fichier : plus on est de fous, plus on rit !

"allez, j't'offre une image bonus :"
screen 2

oui, bon, je sais : d'habitude, la cuillère, c'est plutôt pour la soupe, pas pour les œufs !

en tout cas, ça donne faim, ces bons œufs et les tomates !


remarque : la solution de mon post précédent a un résultat identique pour toutes les lignes, y compris les lignes 38, 39, 43 et 47 ; cela sans ligne vide en début de cellule ; et sans Replace() multiples d'affilée !

à tout hasard, je mets le lien ici, au cas où :

https://forum.excel-pratique.com/viewtopic.php?p=684880#p684880

dhany

Merveilleux !

Le défis à été relevé haut la main !!

Koi a écrit :

Merveilleux !

Le défi à été relevé haut la main !!

merci pour ton retour ! j'savais bien qu'ça t'plairait ! alors ça mérite bien d'passer l'sujet en résolu, pas vrai ? il suffit de cliquer sur le bouton près de (regarde dans le coin haut droit du post) ; ça permet aussi de clôturer le fil de la discussion ; tu sauras que tu as réussi quand tu verras un petit rond vert avec une coche, comme ceci :

sujet

(toi seul peut le faire, car c'est toi qui a créé ce sujet)

dhany

Rechercher des sujets similaires à "remplacer retour chariot"