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

Requêtes et SQL. Discussion :

interprétation de sql dans le vba


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 81
    Par défaut interprétation de sql dans le vba
    Bonjour,


    J'ai cru comprendre dans divers article que c'est très mal, mais je fais partis de ces "petits" développeurs access qui utilisent encore pas mal le vba...

    Et en l'occurence, j'ai une requête qui fonctionne parfaitement dans mon editeur QBE, mais qui ne fonctionne plus du tout lorsque je la copie/colle dans ma variable string sous VBA....

    J'ai détecté l'origine du problème assez facilement, il s'agit de "like".

    Je veux retrouver tous les clients dont le nom comprend une chaine tapée par l'utilisateur, j'utilise donc ma requête avec une clause :

    where [matable].[nomcli] like '*" & monchamptexte.valeur & "*'
    Après un test dans la fenêtre d'exécution, si je récupère ma requête générée et que je l'exécute dans la fenêtre d'édition QBE (en basculant l'affichage en VBA), la requête fonction.

    De plus, si je remplace le "like" par un "=" dans mon code, ça fonctionne aussi...


    Pourriez m'expliquer comment faire accepter le "like" à mon code?

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2006
    Messages : 46
    Par défaut
    Essaie de remplacer tes ' par des "" je ne suis pas certains que ca fonctionne mais peut être que access n'aime pas les like avec '*'.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    where [matable].[nomcli] like ""*" & monchamptexte.valeur & "*"" "
    jujusoso

  3. #3
    Membre chevronné Avatar de supernova
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 447
    Par défaut
    le caractère "joker" standard sql n'est t'il pas le %

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 81
    Par défaut
    Merci à vous, je vais tester les deux solutions.

    Et j'avoue que j'en connaissais aucune....

    Encore merci, je vous tiens au courant.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    402
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2006
    Messages : 402
    Par défaut
    J'ai cru comprendre dans divers article que c'est très mal, mais je fais partis de ces "petits" développeurs access qui utilisent encore pas mal le vba...
    ?
    si tu fais de l'access, en dehors du code vba, tu veux faire quoi ?

    sinon pour les réponses pas mieux que les autres

    conseil: utilises toujours une fonction qui va te remplacer les occurences des cotes du contenu de tes variables de type string.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 81
    Par défaut
    Oui pardon... je voulais dire que je met beaucoup de SQL dans mon code (dès que je veux alimenter quelques chose en fait). Alors qu'il parait qu'il existe pas mal de choses automatisées.

    Quoi que selon les personnes qui en parlent, une fois l'un est plus rapide, une fois c'est l'autre....


    Pour mon problème, merci à supernova. Ca fonctionne avec :

    where [matable].[nomcli] like '%" & monchamptexte.valeur & "%'

Discussions similaires

  1. utiliser des espaces dans requêtes SQL, dans du VBA
    Par willy-78milles dans le forum VBA Access
    Réponses: 13
    Dernier message: 26/03/2009, 10h31
  2. Syntaxe SQL dans le VBA
    Par Pithonnette dans le forum VBA Access
    Réponses: 1
    Dernier message: 27/06/2008, 12h00
  3. requete sql dans code vba
    Par kernel57 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 05/01/2008, 15h30
  4. Mettre des guillemets dans une chaine SQL dans du VBA ?
    Par Marie_2116 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/07/2007, 10h43
  5. Problème SQL dans code VBA
    Par benjisan dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 15/05/2007, 13h22

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