Conversion de caractères spéciaux (2024)

Le 29/10/2009 à 10:34

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

TELECHARGEMENTS

Plus de 300 applications Excel sont disponibles gratuitement en téléchargement !

  • Budget, gestion de comptes
  • Gestion commerciale, personnel
  • Plannings, calendriers
  • Etc.

Voir les applications ...

Bonjour !

J'ai un p'tit soucis sur mon CSV importé depuis ma base de données

En effet tous les caractères spéciaux sortent transformés.

J'aimerais avoir une formule à appliquer sur l'ensemble de ma feuille pour tout rétablir en un clic...

Un merci pour votre aide

Voila mes correspondances :

î

î

é

é

→

Ü

Ü

ù

û

â

â

è

è

"Ã " (espace après le caractère)

à

’

'

€

®

®

Ø

Ø

°

°

ç

ç

ô

ô

«

"

»

"

û

û

ê

ê

…

/ø

ø

ø

ø

À

A

É

E

È

E

" Ã " (Espaces de part et d'autre du caractère)

" à " (Espaces de part et d'autre du caractère)

Ö

Ö

Le 29/10/2009 à 11:50

v

vba-new

Membre impliqué
Messages
2'943
Votes
192
Excel
2010 FR - 2013 FR
Inscrit
13/05/2009

Bonjour à tous,

charly_xiii peux-tu préciser l'endroit où se trouvent les données à modifier.

Est-ce dans la même colonne? Même ligne? Sur toute la feuille?

Mieux, pourrais-tu joindre un bout de fichier afin de mesurer l'ampleur du problème?

vba-new

Le 29/10/2009 à 12:22

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

RE

Les données sont confidentielles je ne pourraia pas les divulguer

Cela concerne des données sur toute une feuille type excel xls

(Toutes lignes et toutes colonnes)

Le 29/10/2009 à 12:36

d

dubois

Passionné d'Excel
Messages
9'246
Votes
352
Excel
Vista Office 2007FR
Inscrit
08/12/2007
Emploi
retraité Sce.Méthodes
Lieu
MEUDON région parisienne

Bonjour à tous,

Cela ressemble à une police Wisiging ,

en enregistrant pour remettre en police normale:

Sub Macro2() Cells.Select With Selection.Font .Name = "Arial" .FontStyle = "Normal" .Size = 10 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = xlAutomatic .TintAndShade = 0 .ThemeFont = xlThemeFontNone End With Range("A1").SelectEnd Sub

à tester

Amicalement

Claude.

Faire simple, c'est ce qui est le plus compliqué ! et vice versa (à méditer)

Le 30/10/2009 à 07:34

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

Bonjour Claude !

Malheureusement l'execution de la macro ne donne aucun resultat

Les caractères demeurent inchangés...

J'ai entendu parler de codage UTF8 ...

Cela est il en rapport ?

Le 30/10/2009 à 07:39

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

Je joins une partie du fichier non sensible

https://www.excel-pratique.com/~files/doc2/piAkSClasseur1.xls

Le 30/10/2009 à 08:07

cousinhub

Passionné d'Excel
Messages
3'327
Votes
668
Excel
xl 2021 Fr
Inscrit
28/05/2009
Lieu
Brest

Bonsoir,

essaie ce code :

Sub remplace_csv()ReDim A_Remplacer(0 To 26)ReDim Remplacants(0 To 26)Dim I As ByteA_Remplacer = Array("î", "é", "→", "Ãœ", "ù", "â", "è", "à ", "’", "€", "®", "Ø", "°", "ç", "ô", _ "«", "»", "û", "ê", "…", "/ø", "ø", "À", "É", "È", " à ", "Ö")Remplacants = Array("î", "é", Chr(26), "Ü", "û", "â", "è", "à", "'", "€", "®", "Ø", "°", "ç", "ô", _ Chr(34), Chr(34), "û", "ê", "..", "ø", "ø", "A", "E", "E", " à ", "Ö")For I = 0 To 26 Cells.Replace What:=A_Remplacer(I), Replacement:=Remplacants(I), LookAt:=xlPartNext IEnd Sub

Fichier joint :

https://www.excel-pratique.com/~files/doc2/remplace_csv.xls

Bonne soirée

Edit, le fichier a été joint afin d'éviter les caractères non imprimables dans le post.

Prendre le code qui se situe dans le module 1

1/ Notre seule récompense est un "Merci".....

Le 30/10/2009 à 08:23

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

Salut cousinhub !

ça a l'air de bien marcher sauf pour " Ã " / " à "

un soucis avec les espaces ...?

Le 30/10/2009 à 08:44

c

charly_xiii

Jeune membre
Messages
34
Excel
2007 FR
Inscrit
18/09/2009

Hum... apparement j'ai du me mélanger les pinceaux car en réessayant par copier/coller de la feuille csv en feuille 1 de ton fichier tout marche nickel !!!!

Un grand merci...

Comme d'habitude, toujours impéccable !!!

Vive cousin HUB !

Le 09/04/2013 à 11:10

V

VBA_padawan

Nouveau venu
Messages
4
Excel
2010 EN
Inscrit
09/04/2013

Bonjour,

Je cherche un code similaire afin de remplacer tous les caractères spéciaux présents dans les différentes cellules d'une même colonne de mon fichier excel 2010 par leur valeur xHtml : "à" => "à"

Du coup j'ai essayé d'utilser le code précédent en remplaçant les valeurs. Alors ça fonctionne par contre j'ai une erreur du type: Run type error '9' subscript out of range.

Ci-dessous ma version test avec simplement 2 caractères spéciaux, je rajouterai tous les autres une fois que celle-ci fonctionnera .

Sub Caractere_speciaux()ReDim A_Remplacer(0 To 2) ReDim Remplacants(0 To 2)Dim I As ByteA_Remplacer = Array("à", "é")Remplacants = Array("à", "&ecute;")For I = 0 To 2 Cells.Replace What:=A_Remplacer(I), Replacement:=Remplacants(I), LookAt:=xlPartNext IEnd Sub

A quoi correspond la valeur 0 to 2 ? Est ce bien en rapport avec le nombre d'élements dans A_Remplacer = Array("à", "é")?

Si jamais vous avez une autre technique pour remplacer les caractères spéciaux par leur valeur xhtml, je suis également preneur. Je suis tombé là dessus et je me suis dis que c'est une bonne piste de départ. par contre, je vais m'amuser pour insérer tout les caractères spéciaux ^^.

Merci pour votre aide.

Le 13/04/2013 à 09:54

v

vba-new

Membre impliqué
Messages
2'943
Votes
192
Excel
2010 FR - 2013 FR
Inscrit
13/05/2009

Bonjour VBA_padawan,

Pour répondre à ta 1ère question :

VBA_padawan a écrit :

A quoi correspond la valeur 0 to 2 ? Est ce bien en rapport avec le nombre d'élements dans A_Remplacer = Array("à", "é")?

C'est bien cela. Par contre, un tableau allant de 0 à 2 possède 3 valeurs (pour simplifier).

Une valeur avec l'indice 0

Une valeur avec l'indice 1

Une valeur avec l'indice 2.

Dans ton cas, tu n'as que 2 valeurs : "à" et "é".

Il te suffit de déclarer tes variables comme ça :

ReDim A_Remplacer(0 To 1) ReDim Remplacants(0 To 1)

vba-new

Le 27/08/2015 à 16:53

m

marittte

Jeune membre
Messages
11
Excel
Mac 2011
Inscrit
18/08/2014

ACCES PREMIUM

Soutenez le site en devenant membre Premium et profitez de plusieurs options exclusives :

  • Navigation sans publicités
  • Option "No Tracking"
  • Option "Mode Incognito"
  • Option "Dark Mode"

Plus d'informations ...

Bonjour à tous,

Tout d'abord merci pour la merveilleuse solution proposée par cousinhub qui a éclairé ma journée ! J'ai un fichier espagnol à traiter avec ces histoires d'accent donc j'ai repris le code et je l'ai adapté à mes caractères. Cela fonctionne, en revanche j'ai 2 caractères qui me posent souci : ó (qui correspond au ó espagnol) et í- (qui correspond au í). Je copie colle ces caractère dans ma macro et cela refuse de se coller tel quel cela se transforme en Ã_. Du coup j'ai regardé dans la table des caractères ASCII pour ajouter Char() dans le code, car j'ai vu que tu avais fait cela pour certains caractères, mais je me planter quelque part mal car cela ne fonctionne pas non plus.

Si quelqu'un a une astuce ça serait top !

Bonne journée !

Bonjour à tous (désolée j'ai copié 2 fois le message je ne suis pas sûre d'avoir répondu au bon endroit la 1ère fois),

Tout d'abord merci pour la merveilleuse solution proposée par cousinhub qui a éclairé ma journée ! J'ai un fichier espagnol à traiter avec ces histoires d'accent donc j'ai repris le code et je l'ai adapté à mes caractères. Cela fonctionne, en revanche j'ai 2 caractères qui me posent souci : ó (qui correspond au ó espagnol) et í- (qui correspond au í). Je copie colle ces caractère dans ma macro et cela refuse de se coller tel quel cela se transforme en Ã_. Du coup j'ai regardé dans la table des caractères ASCII pour ajouter Char() dans le code, car j'ai vu que tu avais fait cela pour certains caractères, mais je me planter quelque part mal car cela ne fonctionne pas non plus.

Si quelqu'un a une astuce ça serait top !

Bonne journée !

Conversion de caractères spéciaux (2024)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Corie Satterfield

Last Updated:

Views: 6408

Rating: 4.1 / 5 (62 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Corie Satterfield

Birthday: 1992-08-19

Address: 850 Benjamin Bridge, Dickinsonchester, CO 68572-0542

Phone: +26813599986666

Job: Sales Manager

Hobby: Table tennis, Soapmaking, Flower arranging, amateur radio, Rock climbing, scrapbook, Horseback riding

Introduction: My name is Corie Satterfield, I am a fancy, perfect, spotless, quaint, fantastic, funny, lucky person who loves writing and wants to share my knowledge and understanding with you.