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 :

conversion texte en chiffre, nombre ou autre


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut conversion texte en chiffre, nombre ou autre
    Bonjour,

    je travaille sur ADO, et j'ai un petit problème avec certains caractères : mes collègues mettent des "/", des "-", etc....etc lorsque je lance mes requêtes ADO, style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rs.Open "SELECT titre,prenom FROM [Feuil3$A1:C1000] WHERE titre='" & moncode & "'", Cnn, adOpenDynamic, adLockOptimistic
    , si "moncode" contient ces caractères, vba plante...

    J'aimerai donc savoir s'il était possible de convertir un texte (exemple : "Eric essaye/modifie/réutilise") en une série de chiffre et/ou autres, bref, vous avez compris, tout ce qui permettrait d'enlever les caractères spéciaux.....

    Merci pour votre aide,

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 417
    Par défaut
    Bonjour,

    Cette page donne la liste des caractères à problèmes:

    Pour le contourner, il devrait être possible de régler cela en utilisant une fonction de "correction" du texte, par exemple du genre de celle-ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function Clean(s As String) As String
       s = Replace(s, "?", "[?]")
       s = Replace(s, "/", "[/]")
       s = Replace(s, "*", "[*]")
       s = Replace(s, "\", "[\]")
       s = Replace(s, "&", "[&]")
       '--- etc.
    End Function
     
    rs.Open "SELECT titre,prenom FROM [Feuil3$A1:C1000] WHERE titre='" & Clean(moncode) & "'", Cnn, adOpenDynamic, adLockOptimistic
    Bonne continuation.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Super merci EricDgn,

    Effectivement, plus de problème !! J'ai rajouté tous les caractères spéciaux évoqués dans votre lien, et...tout fonctionne parfaitement !

    Merci!

    (et info pour les débutants comme moi: il faut déclarer le moncode en string sinon bug...lol)

    Merci,

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

Discussions similaires

  1. Conversion d'une date en texte et chiffre
    Par Zandes dans le forum Cobol
    Réponses: 7
    Dernier message: 11/01/2012, 06h02
  2. Couleur de texte en fonction des chiffres d'un autre champ
    Par vlksoft dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 22/12/2008, 08h15
  3. Conversion texte en nombre
    Par berapard dans le forum Langage SQL
    Réponses: 3
    Dernier message: 02/07/2008, 12h29
  4. Réponses: 1
    Dernier message: 21/04/2008, 16h00
  5. Conversion Texte -> Nombre
    Par bart64 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/07/2007, 11h42

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