remplacement de caractère dans une plage de cellules

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 !

ghaisse

XLDnaute Nouveau
Bonjour,
Je souhaiterais remplacer les retours chariot [CR][LF] se trouvant dans des cellules texte par un nouveau caractère de mon choix, dans chacune des cellules de ma sélection, à l'aide d'une macro.
Je travaille avec Excel 2003.
Merci d'avance de vos réponses.
 
Re : remplacement de caractère dans une plage de cellules

bonjour ghaisse

et bienvenue sur XLD

Il existe 2 retours chariots

donc teste une des 2 versions suivantes

en supposant que tu selectionnes la plage et que le caractere de remplacement soit A

Code:
Selection = Replace(Selection, Chr(10), "A")
Selection = Replace(Selection, Chr(13), "A")
 
Re : remplacement de caractère dans une plage de cellules

Bonjour Pierrejean et merci pour votre réponse.

Votre solution fonctionne, mais elle ne permet de ne traiter qu'une cellule à la fois.
Comment faire pour traiter une colonne entière ou des cellules non adjacentes ?

Le but final étant de remplacer ces caractères "parasites" qui mettent la pagaille dans les lignes des bases de données en les coupant de manière aléatoires.
Je souhaiterais remplacer ces retours chariots par des tildes ou des pipes qui eux sont inoffensifs.
 
Re : remplacement de caractère dans une plage de cellules

Bonjour Pierrejean,
Ca fonctionne très bien avec ce code.

Cependant, parfois il peut y avoir 2 chr(10) qui se suivent dans les données. De ce fait, j'ai 2 tildes après traitement.
Idéalement, je souhaiterai faire un premier traitement en remplaçant tous les chr(10), et ensuite je voudrais remplacer les doubles tildes générés par le premier traitement, par un seul tilde.
Quelle serait la syntaxe pour le code ?
 
Re : remplacement de caractère dans une plage de cellules

Sana avoir controlé il me semble que

Code:
Selection.Replace what:=Chr(10), replacement:=ChrW(732)
Selection.Replace what:=ChrW(732) & ChrW(732), replacement:=ChrW(732)

devrait repondre a ton souhait
 
- 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
476
Retour