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

VBA Access Discussion :

Problème SQL en VBA


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 28
    Par défaut Problème SQL en VBA
    Bonjour à tous,

    Malgrès quelques recherche, je n'arrive pas à trouver la solution à mon problème.

    Je souhaite récuperer le resultat (un chiffre) d'une requete SQL en VBA.
    Est-ce possible?

    Voici le seul code que j'ai trouvé pour l'instant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
      Dim db As DAO.Database
      Dim qdf As DAO.QueryDef
     
      Set db = CurrentDb
        sSQL = "Select CLIENT.PRODUIT_ID From CLIENT Where COMMANDE_ID= Me.COMMANDE_ID"
     
          Set rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
    Je ne vois pas trop l’intérêt des RecordSet. Ne peut ont pas simplement récupérer le résultat (un chiffre) , d'une requête SQL?
    Si non, comment récupérer à partir d'un RecordSet?

    Merci d'avance

    Selverine

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     Dim db As DAO.Database
      Dim rst As DAO.Recordset  
      Dim sSQl As String
      Dim Result as Variant ( Je ne sais pas de quel type est le champ)
     
      Set db = CurrentDb
        sSQL = "Select CLIENT.PRODUIT_ID From CLIENT Where COMMANDE_ID= Me.COMMANDE_ID" 
        Set rst = db.OpenRecordset(sSQL, dbOpenSnapshot)
     
        If Not Orst.EOF Then
           Result = Nz(rst.Fields(0), "")
        Else
           MsgBox "Il n'y a pas d'enregistrement"
        End if
    Cela c'est si tu es sûr de n'avoir qu'un enregistrement.

    Attention de bien fermer la connexion en fin de procédure et de libérer les variables.
    Dernière modification par Invité ; 04/07/2011 à 17h25.

  3. #3
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 186
    Par défaut
    Bonjour,

    Dans ce cas précis, un DLookup peut suffire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim iLng_ProductId as long
        iLng_ProductId= DLookup("PRODUIT_ID", "CLIENT", "COMMANDE_ID = " & Me.COMMANDE_ID.value)
    [Access] Les bases du débogage => ici

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 28
    Par défaut
    Merci pour tout!

    J'ai pas encore testé la solution de Kloun , mais celle de GAYOT fonctionne (par contre comme Me.COMMANDE_ID est une variable il faut écrire

    "Select CLIENT.PRODUIT_ID From CLIENT Where COMMANDE_ID= " & Me.COMMANDE_ID".

    Je teste ce soir la solution de klou!

    Enfaite, je sais pas si c 'est possible, mais peut on retourner un tableau dans une fonction en VBA?

    Merci!

Discussions similaires

  1. Problème avec les apostrophes dans le sql en VBA
    Par cyrilboulan dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 14/03/2017, 10h11
  2. [AC-2010] Problème sql en vba
    Par AidezMoiSvp dans le forum VBA Access
    Réponses: 3
    Dernier message: 20/10/2013, 10h41
  3. Problème SQL dans VBA
    Par Basicnav dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/02/2010, 14h03
  4. problème sql en vba
    Par maxime350 dans le forum VBA Access
    Réponses: 8
    Dernier message: 16/06/2008, 11h34
  5. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24

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