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 :

exporter une query vers excel


Sujet :

VBA Access

  1. #1
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut exporter une query vers excel
    Bonjour,

    après avoir lu le tuto de Cafeine (que je remercie pour toutes ces informations qu'il partage), je m'essaye à exporter des requêtes vers excel.

    étant donné le temps que prend un export de type "Automation", je m'essaye au "DoCmd.OutputTo".

    mais ça ne fonctionne pas comme je voudrais:
    voilà mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DoCmd.OutputTo acOutputQuery, "R_Extract_UO", acSpreadsheetTypeExcel, "D:\test.xls", True
    'ou encore
    DoCmd.OutputTo acOutputQuery, "R_Extract_UO", acSpreadsheet, "D:\test.xls", True
    avec ça, lors du clic sur mon bouton, access me propose de choisir un format de sortie dans une liste. l'export fonctionne ! mais je préfèrerais qu'il ne me le propose pas et qu'il le fasse tout seul comme un grand.
    qu'à cela ne tienne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OutputTo acOutputQuery, "R_Extract_UO", acSpreadsheetTypeExcel9, "D:\test.xls", True
    .... oui à priori ....

    mais pourtant, access n'est pas du même avis....

    "erreur d'exécution 2282"
    "Les formats qui vous permettent de copier des données à un Microsoft Excel, un format RTF, un Texte MS-DOS ou un format HTML sont manquants du Registre de Windows."

    je trouve ça pas très parlant, je ne comprends pas trop ce qu'il me veut....

    si quelqu'un peut m'aider....

  2. #2
    Membre expérimenté Avatar de Gabout
    Homme Profil pro
    Utilisateur autodidacte
    Inscrit en
    Mai 2006
    Messages
    1 404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Utilisateur autodidacte

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 404
    Points : 1 683
    Points
    1 683
    Par défaut
    Bonjour,

    Je suis étonné de ton code. Je suis sur Access 2000 et je ne rencontre pas les formats de sortie auxquels tu fais référence. Moi, je ne dispose que de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    acFormatASP
    acFormatDAP
    acFormatHTML
    acFormatIIS
    acFormatRTF
    acFormatSNP
    acFormatTXT
    acFormatXLS
    Essaie de transformer ton code en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OutputTo acOutputQuery, "R_Extract_UO", acFormatXLS, "D:\test.xls", True

  3. #3
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut
    En effet !

    pour ma part il ne me proposait rien du tout, donc j'y suis allée un peu au hazard !

    mais en effet, ça fonctionne mieux tout de suite avec ton code !

    Merci beaucoup !


  4. #4
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut
    Par contre j'ai une autre question à ce sujet...

    comme ça fonctionnait très bien, j'ai essayé le même code avec, à la place du nom de ma requête, un DAO.Recordset...

    ça ne plait pas à access.

    Ya-t-il un moyen d'exporter un recordset ?
    (en utilisant toujours cette technique simple, puisque l'automation qui est espliquée sur le tuto de cafeine est beaucoup trop longue pour moi... on passe d'exportations de 2secondes à des exportations de 67secondes en moyenne, pour les mêmes données)

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 642
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 642
    Points : 34 353
    Points
    34 353
    Par défaut
    salut,
    as-tu pensé à cocher la référence DAO dans ton projet ?

  6. #6
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut
    bon j'ai fait de la bidouille, ça ira très bien comme ça.

    j'explique: je crée une requête dans access, je l'exporte, et je la supprime, comme ça, je reste sur de l'export simple de requête, et j'évite la lenteur d'export.

    je crée et supprime la requête parce que je n'ai pas trouvé comment modifier le sql d'une requête (enfin si, j'ai trouvé un petit bout de code tout simple, en passant par ADO, mais ça augmente le temps t'exécution du code, et en plus, je ne connais rien du tuot à ADO).

    @+ !


  7. #7
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut
    ps: oui jpcheck, DAO est bien cochée....

  8. #8
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 642
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 642
    Points : 34 353
    Points
    34 353
    Par défaut
    d'accord,
    pour accéder au code sql d'une requête, tu peux passer par ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dim tempo as QueryDef
    For each tempo in CurrentDb.QueryDefs
    debug.print tempo.name & ":" & tempo.SQL
    Next

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/04/2009, 22h37
  2. [A-00] exporter une liste vers excel
    Par Slici dans le forum VBA Access
    Réponses: 5
    Dernier message: 06/03/2009, 14h49
  3. Réponses: 2
    Dernier message: 13/06/2008, 11h09
  4. exporter une requete vers excel
    Par tzinzin dans le forum VBA Access
    Réponses: 3
    Dernier message: 02/11/2007, 16h08
  5. Exporter une dataGridView vers Excel
    Par drayif dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/08/2007, 17h45

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