IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ne pas tenir compte des accents


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 127
    Points : 26
    Points
    26
    Par défaut Ne pas tenir compte des accents
    Bonjour,

    Je cherche le bout de code qui permet de ne pas faire attention aux accents dans une comparaison.

    Merci de votre aide
    Julien

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 138
    Points : 9 972
    Points
    9 972
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    une fonction VBA qui renvoie une chaine sans les accents :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    Function Sans_accent(Chaine As String) As String  ' R. Dezan + Michel Pierron || adaptée et commentée par D. IBKA
     
    ' remplacement des caractères accentués par leur équivalent sans accent
     
     Dim ListeDesAccents As String
     Dim ListeSansAccent As String
     Dim i As Integer
     Dim u As Integer
     
     ' on va utiliser deux listes de correspondance (avec et sans accent)
     ' chaque caractère accentué a une position définie dans la liste des accents
     ' son équivalent sans accent a la même position dans la liste sans accent
     
     ListeDesAccents = "ÀÁÂÃÄÅÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåèéêëìíîïðñòóôõöùúûüýÿ"
     ListeSansAccent = "AAAAAAEEEEIIIINOOOOOUUUUYaaaaaaeeeeiiiionooooouuuuyy"
     
     
     ' pour chaque caractère de la chaine testée
     For i = 1 To Len(Chaine)
     
        ' on cherche si le caractère fait partie de la liste des caractères accentués
        u = InStr(1, ListeDesAccents, Mid(Chaine, i, 1), 0)
     
        ' si c'est le cas, on le remplace par son équivalent non accentué
        If u Then
            Mid(Chaine, i, 1) = Mid(ListeSansAccent, u, 1)
        End If
     
     Next i
     
     ' on retrouve à la fin : une chaîne convertie sans les accents
     Sans_accent = Chaine
     
    End Function
    Ensuite, tu as juste à utiliser cette fonction quand tu fais ta comparaison

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
     
    Sub Test()
    Dim Chaine as String
    Dim ChaineBis as String
     
    Chaine = "olé"
    ChaineBis = "ole"
     
    if Chaine = ChaineBis then
        Msgbox "les 2 chaines sont identiques à l'accent près"
    elseif Sans_accent(Chaine) = ChaineBis then
        Msgbox "les 2 chaines sont identiques, à l'exeption des accents"
    end if
     
    end sub

Discussions similaires

  1. [WD19] Requête SQL qui ne doit pas tenir compte des accents
    Par Tchupacabra dans le forum WinDev
    Réponses: 10
    Dernier message: 19/06/2014, 10h30
  2. [Débutant] BindingSource.Filter : Ne pas tenir compte des accents
    Par noftal dans le forum VB.NET
    Réponses: 14
    Dernier message: 03/11/2013, 19h19
  3. Ne pas tenir compte des accent dans une requete
    Par prat038 dans le forum SQL
    Réponses: 8
    Dernier message: 07/09/2009, 13h34
  4. Réponses: 1
    Dernier message: 17/08/2006, 20h27
  5. Ne pas tenir compte des accents dans une requete
    Par zamanika dans le forum Installation
    Réponses: 8
    Dernier message: 08/11/2004, 19h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo