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

Access Discussion :

Recherche avec des accents!?


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2004
    Messages : 74
    Points : 56
    Points
    56
    Par défaut Recherche avec des accents!?
    Bonjour,

    J'utilise un recordset pour faire une recherche à partir d'un textBox d'un formulaire à l'aide d'une requête comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     SELECT prenom, nom FROM employe WHERE UCASE(prenom) LIKE UCASE('%" & Me.monTextBox & "%')
    J'ai des problèmes lorsque je fais des recherches avec des accents. Si je mets par exemple "côté" ca me sort tous les "CÔTÉ" mais pas les "côté" ? Comment je peux enlever ce problème avec les accents?

    Merci

  2. #2
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 81
    Points : 67
    Points
    67
    Par défaut
    Ben supprime les accents partout dans les tables, les requêtes etc...
    C'est surement ce qu'il y a de plus simple. après faut voir si c'est nécessaire de les garder pour ce que tu fais

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2004
    Messages : 74
    Points : 56
    Points
    56
    Par défaut
    Oui, mais je ne comprends toujours pas pourquoi ca me sort uniquement les résultats en lettres majuscules.

    J'ai essayer d'utiliser une fonction "SansAccent" que j'ai pris quelque part dans le forum, ca enlève les accents, ca me donne en général les bons résultats, sauf que je met ca dans un recordset et je fais une loop dessus et 1 fois sur 2, ça plante à la ligne recordset.MoveNext...?

    Cette expression présente une syntaxe incorrecte, ou est trop complexe pour être évaluée. Par exemple, une expression numérique peut contenur des éléments trop compliqués. Essayez de la simplifier en en affectant des parties à des variables.
    Et voici la fonction SansAccent (qui ne génère par d'erreur)

    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
     
    'Cette fonction remplace les lettres avec accents pour les même mais sans accents
    Public Function sansAccent(ByVal chaine As String, EnMajuscule As Boolean) As String
    chaine = LCase(chaine)
    chaine = Replace(chaine, Chr(232), "e")
    chaine = Replace(chaine, Chr(233), "e")
    chaine = Replace(chaine, Chr(234), "e")
    chaine = Replace(chaine, Chr(235), "e")
    chaine = Replace(chaine, Chr(249), "u")
    chaine = Replace(chaine, Chr(250), "u")
    chaine = Replace(chaine, Chr(251), "u")
    chaine = Replace(chaine, Chr(242), "o")
    chaine = Replace(chaine, Chr(254), "o")
    chaine = Replace(chaine, Chr(255), "y")
    chaine = Replace(chaine, Chr(224), "a")
    chaine = Replace(chaine, Chr(225), "a")
    chaine = Replace(chaine, Chr(226), "a")
    chaine = Replace(chaine, Chr(238), "i")
    chaine = Replace(chaine, Chr(239), "i")
     
    If EnMajuscule Then chaine = UCase(chaine)
    sansAccent = chaine
    End Function

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2004
    Messages : 74
    Points : 56
    Points
    56
    Par défaut
    L'erreur venait du fait que une chaine vide passant dans la fonction SansAccent retournait #Error j'ai donc ajouté un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Where prenom IS NOT NULL

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/08/2012, 14h52
  2. Export de table avec des accents
    Par AODRENN dans le forum Excel
    Réponses: 1
    Dernier message: 24/05/2007, 11h57
  3. Export de table avec des accents
    Par AODRENN dans le forum Outils
    Réponses: 3
    Dernier message: 16/05/2007, 21h21
  4. Faire une recherche avec/sans accents
    Par Wedge3D dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 21/02/2007, 10h43
  5. Mauvais tri des String avec des accents
    Par lbreuillard dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 23/09/2005, 12h21

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