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 :

FAQ : problème avec création d'une requete en VBA


Sujet :

VBA Access

  1. #1
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut FAQ : problème avec création d'une requete en VBA
    Bonjour

    J'aimerai dans mon formulaire créer une requête qui va s'ajouter dans Access. J'ai récupéré le code suivant dans la FAQ mais il ne se compile pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentDb.CreateQueryDef("MaReqCreee", "Select * FROM Table1")
    Apparemment il attend un = quelque part

    C'est moi qui ait du mal ou bien y'a effectivement une erreur dans la FAQ ?

    Merci

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Mai 2004
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 236
    Points : 310
    Points
    310
    Par défaut
    Il faut déclarer et instancier une variable de type querydef :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim qry As QueryDef
    Set qry = CurrentDb.CreateQueryDef("MaReqCreee", "Select * FROM Table1")
    En espérant t'avoir aidé.

  3. #3
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    merci pour ta réponse
    mais ca ne compile toujours pas, on dirait qu'il ne reconnait pas le type QueryDef

  4. #4
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    as tu ajouté la référence dao à ton projet ?

  5. #5
    Membre averti

    Profil pro
    Inscrit en
    Mai 2004
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 236
    Points : 310
    Points
    310
    Par défaut
    Il faut rajouter la référence Microsoft DAO 3.6 Object Library.

    En espérant t'avoir aidé.

  6. #6
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    mouarf, maintenant j'ai le message "Variable objet ou variable bloc with non définie"
    sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set qry = CurrentDb.CreateQueryDef("tmpfic", stSQL)
    (stSQL contient ma requête mais si je met un simple select * from ca ne fonctionne pas plus)

    Désolée pour toutes ces questions mais je suis très limitée avec Access

  7. #7
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    slt,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call CurrentDb.CreateQueryDef("MaReqCreee", "Select * FROM Table1")
    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentDb.CreateQueryDef "MaReqCreee", "Select * FROM Table1"
    :

  8. #8
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    même message d'erreur avec les 2 propositions

  9. #9
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    http://warin.developpez.com/access/d...artie_4#L4.7.4

    Citation Envoyé par Moi
    Dans notre exemple nous allons créer une requête de sélection complète de la table clients. Il s'agit d'une requête simple et la méthode à appliquer est la même pour tout type de requête.
    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
    Sub CreerRequete()
    On Error GoTo Err
    Dim oDb As DAO.Database
    Dim strCodeSql As String
    'Instancie l'objet database
    Set oDb = CurrentDb
    'Stocke le code SQL dans une variable
    strCodeSql = "SELECT * FROM Client"
    'Crée la requête
    oDb.CreateQueryDef "R01_SelectionClient", strCodeSql
     
    Finally:
    oDb.Close
    Set oDb = Nothing
     
    Err:
    'Gére les erreurs
    Select Case Err.Number
      Case 3012: MsgBox "La requête existe déjà"
      Case Else: MsgBox "Une erreur inconue est survenue"
    End Select
    Resume Finally
    End Sub

  10. #10
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    toujours la même erreur sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oDb.CreateQueryDef "tmpfic", stSQL
    Ca pourrait pas venir du fait que c'est une base .adp ?

  11. #11
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Dans ce cas, si c'est du SQL Server, utilise ADOX comme précisé dans le tutoriel suivant :

    ftp://ftp2.developpez.be/developps/vb/VB-ADOX.pdf

  12. #12
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    j'ai essayé avec ADOX hier justement mais quand je précise le nom de ma base pour la connexion il me dit qu'il ne reconnait pas le format

    voici le lien que j'avais trouvé : http://download.microsoft.com/download/b/0/d/b0d22259-beb7-4fb0-adc5-c816ac870939/ADOX.doc (page 10)

  13. #13
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Utilise la connexion :

    CurrentProject.Connection

  14. #14
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Voilà mon nouveau code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim cat As New ADOX.Catalog
            Dim cmd As New ADODB.Command
     
            cat.ActiveConnection = CurrentProject.Connection
            cmd.CommandText = stSQL
     
            cat.Procedures.Append "tmpfic", cmd
    J'ai le message "cette interface n'est pas prise en charge" sur la dernière ligne

  15. #15
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Bon en fait j'abandonne, j'ai réussi à faire ce que je veux au final en utilisant une autre technique que de passer par une requête Access.

    Merci pour l'aide en tous cas

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

Discussions similaires

  1. Problème avec checkbox pour une requete
    Par tyjez dans le forum Requêtes et SQL.
    Réponses: 22
    Dernier message: 22/09/2013, 20h20
  2. Création d'une requete en VBA
    Par artnquaist dans le forum VBA Access
    Réponses: 5
    Dernier message: 28/09/2007, 12h44
  3. Problème export excel sur une requete avec critère
    Par eddyG dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 20/09/2006, 11h46
  4. Réponses: 9
    Dernier message: 05/04/2006, 17h48
  5. Problème avec la fonction créer requete de la FAQ
    Par greg64 dans le forum Access
    Réponses: 8
    Dernier message: 28/03/2006, 12h28

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