Supprimer caractère saut de ligne

Résolu
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 19 juil. 2010 à 19:30
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 20 juil. 2010 à 00:39
Bonjour,

C'est un peu honteux que je poste une question aussi "simple", mais pour laquelle je n'ai toujours pas trouvé de réponse satisfaisante.

J'importe un texte dans une cellule qui peut contenir un saut de ligne (le vilain petit carré!), mais je ne sais pas où précisément.

Je veux le(s) supprimer et le(s) remplacer par un espace ou un caratère quelconque, mais tout ce que j'ai pu trouver ne marche pas... exemple :
Sub NoSaut()
Dim Text1, Text2
Text1 = Range("A1").Value
Text2 = Replace(Text1, Chr(13), "$")
Range("A1").Value = Text2
End Sub


Merci pour toute aide
Rataxes64

3 réponses

NHenry Messages postés 15036 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 5 février 2023 156
19 juil. 2010 à 19:57
Bonjour,

Et si à l place de
Chr(13)
Tu mets
Chr(10)
?

Sinon, une solution plus radicale :
Dim i as long

For i=0 to 31
    Cellule.Value=Replace(Cellule.Value,chr$(i),"$")
Next i


Ca remplace tous les caractères non imprimable (ASCII <32)

Mon site
3
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 1
20 juil. 2010 à 00:39
MERCI NHenry!
Ta solution "radicale" est nikel!


Rataxes64
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
19 juil. 2010 à 20:22
Le caractère "Saut de ligne", c'est soit Chr(13), soit Chr(10) mais aussi souvent Chr(13) suivie de Chr(10)

Le mieux étant de systématiquement remplacer les 2, Chr(13) et Chr(10), l'un après l'autre.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0
Rejoignez-nous