Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/11/2010, 05h27   #1
Rédacteur

 
Avatar de ClaudeLELOUP
 
Homme Claude LELOUP
Chercheur de loisirs (ayant trouvé !)
Inscription : novembre 2006
Messages : 5 237
Détails du profil
Informations personnelles :
Nom : Homme Claude LELOUP
Âge : 66
Localisation : Belgique

Informations professionnelles :
Activité : Chercheur de loisirs (ayant trouvé !)
Secteur : Finance

Informations forums :
Inscription : novembre 2006
Messages : 5 237
Points : 11 023
Points : 11 023
Par défaut Transformer č --> c ; ŝ --> s

Bonjour,

Je voudrais supprimer les accents dans une chaîne de caractères.
Mon problème : č et ŝ
Dans l'éditeur VBE, je ne parviens pas à écrire, comme je le fais ici (avec copier/coller du č) :
Chaine = Replace(Chaine, "č", "c") ***
j'obtiens
Code :
Chaine = Replace(Chaine, "c", "c")
Je ne trouve pas non plus le code ASCII de č qui me permettrait d'écrire
Code :
Chaine = Replace(Chaine, chr(nnn), "c")
*** si, dans ce message, j'encadre ce texte entre les balises # cela donne
Code :
Chaine = Replace(Chaine, "č", "c")
Merci déjà à ceux qui auront lu.
ClaudeLELOUP est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 06h39   #2
Membre chevronné
 
Avatar de Spoutnik
 
Homme
Inscription : octobre 2003
Messages : 668
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : Etats-Unis

Informations forums :
Inscription : octobre 2003
Messages : 668
Points : 746
Points : 746
Hello,

Je ne connais pas le VBA, mais j'ai eu un problème similaire (lettres accentuées et diacritiques) il y a qq temps en Java.
Regarde du coté de la fonction 'Normalize' (j'ai trouvé ca sur la doc .Net http://msdn.microsoft.com/en-us/library/8eaxk1x2.aspx, si ca peut t'aider).

Quant aux codes ascii de ce types de caractères, c'est normal que tu ne les trouves pas ... ils n'existent pas (au moins dans la table standard).

Tiens moi au courant si ca a résolu ton problème.

++
__________________
Two beer or not two beer. (Shakesbeer)
Question technique par MP => poubelle!
Spoutnik est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/11/2010, 07h07   #3
Membre Expert
 
Homme Michel
Ingénieur développement logiciels
Inscription : mai 2005
Messages : 1 583
Détails du profil
Informations personnelles :
Nom : Homme Michel
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2005
Messages : 1 583
Points : 2 141
Points : 2 141
Caractères spéciaux en effet, je retire ma réponse trop rapide.
__________________
"tout le monde veut sauver la planète, mais personne ne veut descendre les poubelles." J Yanne
micniv est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 08h54   #4
Rédacteur

 
Avatar de ClaudeLELOUP
 
Homme Claude LELOUP
Chercheur de loisirs (ayant trouvé !)
Inscription : novembre 2006
Messages : 5 237
Détails du profil
Informations personnelles :
Nom : Homme Claude LELOUP
Âge : 66
Localisation : Belgique

Informations professionnelles :
Activité : Chercheur de loisirs (ayant trouvé !)
Secteur : Finance

Informations forums :
Inscription : novembre 2006
Messages : 5 237
Points : 11 023
Points : 11 023
Merci Spoutnik,

Mes connaissances informatiques sont limitées : je suis incapable de construire en VBA l’équivalent du code que renseigne ton lien.
Mais, grâce à ça, j’ai la solution.
J’ai créé un table CarSpec avec [id] et [caractere]
Avec des copier/coller j’ai introduit č et ŝ
J’ai écrit la fonction
Code :
1
2
3
Public Function getCar(id As Long) As String
getCar = DLookup("caractere", "CarSpec", "id=" & id)
End Function
et maintenant
Code :
1
2
Chaine = Replace(Chaine, getCar(1), "c") 'c avec accent circonflexe renversé
Chaine = Replace(Chaine, getCar(2), "s") 's avec accent circonflexe
me donne le résultat voulu.

Merci encore et bonne journée.

Ps Géniale ta signature ! (je suis Belge)
ClaudeLELOUP est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h34.


 
 
 
 
Partenaires

Hébergement Web