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

Excel Discussion :

Problème requête SQL en VBA // nb recordset


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Mars 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mars 2013
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Problème requête SQL en VBA // nb recordset
    Bonsoir,

    je travaille sur une appli qui récupère des données Access pour les afficher dans différentes fenêtres Excel.

    J'ai actuellement un recordset dont la requête est la suivante :

    sql2 = "SELECT Entité FROM Employers WHERE Noms ='" & Sel & "' AND Poste ='" & Fonction & "'; "

    "Fonction" et Sel sont sélectionnées successivement par l'utilisateur dans des Combobox

    Seulement voilà, la requête ne fonctionne pas :
    erreur de syntaxe opérateur absent dans l'expression : " Noms = Segalen AND Poste = technicien

    J'ai bien les bonnes variables de récupérées, et quand je vais dans ma BDD Access il y a pourtant des Entités pour lesquelles ces deux conditions sont vraies . . .

    En sélectionnant un autre nom dans ma combobox, la requête fonctionne parfois, et en enlevant le "AND .................." ça marche sans problème.

    J'ai tenté avec INTERSECT mais là j'ai une autre erreur . . .

    Quelqu'un aurait-il une idée?
    Merci d'avance !

  2. #2
    Membre régulier
    Femme Profil pro
    Inscrit en
    Février 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 56
    Points : 88
    Points
    88
    Par défaut
    Bonjour,

    Pour s'affranchir des noms avec apostrophes (L'Hermitte e.g.), il faut utiliser une fonction qui double les apostrophes.
    Pour les tests, avant d'exécuter la requête, la visualiser avec MsgBox sql2.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    sql2 = "SELECT Entité FROM Employers WHERE  Noms ='" & Guillemets(Sel) & "' AND Poste ='" & Fonction & "'; "
     
    Function Guillemets(chaine)
      chaine = Replace(chaine, """, """")
      Guillemets = chaine
    End Function
    Ceuzin

Discussions similaires

  1. [XL-2007] Problème requête sql dans vba
    Par Alex70 dans le forum Excel
    Réponses: 1
    Dernier message: 21/08/2013, 11h48
  2. Problème de requête SQL en VBA
    Par lololebricoleur dans le forum Langage SQL
    Réponses: 3
    Dernier message: 19/10/2012, 14h43
  3. Problème avec une requète SQL en vba
    Par mephistomauvis dans le forum VBA Access
    Réponses: 2
    Dernier message: 22/12/2008, 19h41
  4. Problème avec requête SQL dans VBA
    Par Mimisio dans le forum VBA Access
    Réponses: 10
    Dernier message: 13/07/2007, 11h00
  5. Réponses: 8
    Dernier message: 23/10/2003, 16h22

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