Remplacer caractère bizarre

Paladin

XLDnaute Junior
Bonjour le forum,

J'utilise la fonction suivante :
Code:
Cells.Replace X, Y
où X est ce que je veux remplacer par Y

Avec les caractères classiques (chiffres, lettres, ...), ça marche impec (donc pas de souci).
Là où ça coince, c'est que je fais ce remplacement sur un tableau issu d'un export PhP (je passe les détails :whistle: ). Dans ce tableau, certains caractères sont des carrés blancs (aspect graphique identique à Chr(1) ).
Je veux les remplacer par des € et je fais donc :
Code:
Cells.Replace Chr(1), '€'
Mais là, ça bugge carrément :( : ça me remplace toutes les cellules qui ont quelque chose dedans par le € ! Ou ça me crée des erreurs qui ont rien à voir (dans le reste de la macro, je renomme des feuilles et il me dit qu'il est impossible de renommer deux feuilles avec le même nom par exemple).

Quelqu'un serait-il comment faire ?

Merci d'avance
 

2passage

XLDnaute Impliqué
Bonjour,

le carré blanc n'est pas QUE chr(1), donc ne te fie pas à l'aspect graphique pour le remplacer.... la bonne solution est de trouver le code ascii de ce caractère et de le remplacer. Pour trouver ce code, utilise =CODE(le caractère) et =CAR(le numéro du caractère) pour vérifier en feuille de calcul... si tu veux le faire en VBA c'est CHR(le code) et ASC(la lettre)..
Ce que je fais : je copie le caractère en question et dans une fenetre execution : debug.? asc('mon caractère')

Je te souhaite un caractère unique...

A+
 

Gael

XLDnaute Barbatruc
Bonjour Paladin, Bonjour 2Passage,

Il y a aussi une fonction EPURAGE dans XL pour supprimer tous les caractères de contrôle d'une chaîne de texte.

Je ne sais pas si on peut l'utiliser en VBA, mais tu peux peurt-être filtrer les données avant utilisation?

@+

Gael
 

Discussions similaires

Réponses
5
Affichages
264

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote