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 :

Modifier la source d'une requête enregistrée dans une bdd en vue d'un export


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Juin 2021
    Messages : 7
    Par défaut Modifier la source d'une requête enregistrée dans une bdd en vue d'un export
    Bonjour,
    Je ne parviens pas à réaliser en VBA le code qui modifie la source d'une requête enregistrée. Je souhaite utiliser ADOX car je ne parviens pas à référencer mon projet avec DAO.
    J'ai interrogé chat gpt mais cela ne marche ! ;_).
    J'ai une erreur 438 ( propriété ou méthode non gérée ) à la ligne d'affectation de la nouvelle source.
    Voici le code :

    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
    Private Sub ExportExcel_Click()
        Dim cat As Object ' Objet Catalogue
        Dim nouvelleSource As String
     
        ' Spécifiez la nouvelle source de données pour la requête
        nouvelleSource = "SELECT * FROM T_Projet;"
     
        '  "NomDeVotreBaseActive"
        Set cat = Application.CurrentData
     
        ' Modifiez la définition de la requête
        cat.Views("R_ExportPourExcel").Command = nouvelleSource
     
        ' Fermez les objets
     
        Set cat = Nothing
     
        MsgBox "La source de la requête a été modifiée avec succès !"
    End Sub
    Merci pour votre aide.
    Thierry

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Juin 2021
    Messages : 7
    Par défaut
    Citation Envoyé par Thierry5960 Voir le message
    Bonjour,
    Je ne parviens pas à réaliser en VBA le code qui modifie la source d'une requête enregistrée. Je souhaite utiliser ADOX car je ne parviens pas à référencer mon projet avec DAO.
    J'ai interrogé chat gpt mais cela ne marche ! ;_).
    J'ai une erreur 438 ( propriété ou méthode non gérée ) à la ligne d'affectation de la nouvelle source.
    Voici le code :

    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
    Private Sub ExportExcel_Click()
        Dim cat As Object ' Objet Catalogue
        Dim nouvelleSource As String
     
        ' Spécifiez la nouvelle source de données pour la requête
        nouvelleSource = "SELECT * FROM T_Projet;"
     
        '  "NomDeVotreBaseActive"
        Set cat = Application.CurrentData
     
        ' Modifiez la définition de la requête
        cat.Views("R_ExportPourExcel").Command = nouvelleSource
     
        ' Fermez les objets
     
        Set cat = Nothing
     
        MsgBox "La source de la requête a été modifiée avec succès !"
    End Sub
    Merci pour votre aide.
    Thierry
    Finalement, j'ai réussi à réferencer en DAO, plus simple à manipuler pour moi. La solution que j'ai trouvé est ainsi :

    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
    Private Sub Commande48_Click()
    Dim db As DAO.Database
    Dim qdf As DAO.QueryDef
    Dim nouvellesource As String
     
    nouvellesource = "SELECT * FROM T_Projet;"
     
    Set db = CurrentDb
    Set qdf = db.QueryDefs("R_PourExportExcel")
    qdf.sql = nouvellesource
     
    qdf.Close
    Set qdf = Nothing
    Set db = Nothing
    End Sub
    Merci

Discussions similaires

  1. [AC-2013] Modifier la source d'une liste déroulante
    Par rag83 dans le forum IHM
    Réponses: 2
    Dernier message: 29/01/2016, 19h36
  2. Réponses: 4
    Dernier message: 25/07/2014, 11h37
  3. Réponses: 3
    Dernier message: 04/03/2011, 03h59
  4. Modifier la source d'une image
    Par Slide dans le forum VBA PowerPoint
    Réponses: 1
    Dernier message: 12/07/2007, 16h09
  5. Réponses: 4
    Dernier message: 09/02/2007, 07h58

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