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 requete en CSV


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut exporter une requete en CSV
    Bonsoir,

    J'essaye d'exporter une requete ACCESS sous vers un fichier csv
    par le code VBA ci dessous


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DoCmd.TransferText acExportDelim,"Export" , "R_contact", "C:\test\Historique.csv", True
    Le souci c'est que :
    - je n'ai pas la ligne de titres ( lgine avec les champ des colonnes) bien que j'ai mis "true " a la fin du code
    - dans une colonne de la requete j'ai des dates et sur le fichier csv le format de cette colonne se transforme en "personalisé" : les dates s'espriment en DD/MM/AAAA hh:mm:ss alors que je souahite que le format DD/MM/AAAA . pourtant dans le modele d'export "Export" j'ai bien mis le format date et il y a pas ml'heure sur les donnes

    savez-vous comment remedier aux problemes?
    *merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Probablement un soucis sur la structure d'exportation "Export" que tu as créé. Sinon si la requête est réalisée sur une table Access, pourquoi ne pas tenter avec la fonction TransferSpreadsheet?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    merci

    quel type de souci =peut il y avoir ac le format d'export?
    en fait il me faut le fichier en csv pour pourvoir lancer dautre traimtement derriere qui s'appuient sur le cs.

    merci

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Pour la structure d'exportation, es-ce qu'en exportant manuellement la table en CSV, tu obtient un fichier correct?

    Par ailleurs, Si ta table est une table Access (pas une table liée à un fichier texte), il me semble qu'en passant par TransferSpreadsheet tu peut créer un CSV.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    bonsoir

    en exportant mlanuellement, le fichier est correct y a aucun souci
    par contre comment on fait pour exposter en csv avec la fonction transferspreadsheet,? j'ai essayé tout les formats mais je n'arrive pas

    merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Pour Docmd.tranferSpreadSheet cela créé bien un CSV, mais seulement lisible via Excel... Donc inutile finalement.

    Pour l'exportation en Csv via TranfertText, as-tu:
    - bien vérifier que le nom de la spécification d'exportation est bien "Export" (pas d'erreur dans le nom?)
    - bien vérifié que l'option "Inclure les noms des champs sur la première ligne" était bien cochée quand tu as enregistré ta spécificité d'exportation "Export" (sinon tu n'auras pas les noms de colonnes avec TransfertText).
    - Pour les dates, utiliser la fonction Format pour forcer la date en jj/mm/aaaa.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    bonjour,

    oui le nom du fichier d'export est correct et le champ "Inclure les noms des champs sur la première ligne" est bien coché
    mais ca ne me met pas les champs de colonne
    par contre la fonction format marche : j'ai bien les champ en format date

    sinon comment faites vous pour exporte en csv avec la fonction " tranferSpreadSheet " ??
    merci

  8. #8
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Citation Envoyé par moimemessssssssss Voir le message
    bonjour,

    oui le nom du fichier d'export est correct et le champ "Inclure les noms des champs sur la première ligne" est bien coché
    mais ca ne me met pas les champs de colonne
    Je ne parle pas du nom du fichier mais de la spécificité d'exportation. Lorsque tu créé cette spécificité d'exportation, tu dois bien t'assurer que cette case est cochée quand tu l'utilise manuellement. Car si tu utilise bien la bonne spécificité d'exportation, alors c'est la seule explication possible. J'insiste sur ce point car j'ai fait le test justement.
    Sous Access, au moment de faire l'exportation en csv (ou texte), si la case n'est pas cochée au moment d'enregistrer la spécificité d'exportation, ben il n'y a pas de noms de champs...
    Au pire tu peux nous mettre un exemple de ta base (en supprimant toutes les tables, requêtes ou autres formulaires, avec une seule ligne dans la table concernée).



    Citation Envoyé par moimemessssssssss Voir le message
    sinon comment faites vous pour exporte en csv avec la fonction " tranferSpreadSheet " ??
    merci
    Citation Envoyé par Psychopathe Voir le message
    Pour Docmd.tranferSpreadSheet cela créé bien un CSV, mais seulement lisible via Excel... Donc inutile finalement.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    bonsoir,
    j'ai joint une basse access zippée dans laquelle je n'ai laissé que la table et la procédure "exportation" (alt F11)
    voila jespere que ca ira

    merci
    Fichiers attachés Fichiers attachés

  10. #10
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Bon ok...
    Déjà pour les dates il faut partir d'une requête pour forcer une date abrégée (requête nommée ReqDonnees dans la base).
    Ensuite comme je le pensais, si les noms de champs n'apparaissent pas c'est bien à cause de la spécificité d'exportation. Ainsi, si tu utilise une requête, il vaut mieux faire une exportation manuelle de la requête, et enregistrer alors la nouvelle spécificité d'exportation. Celle que j'ai créé s'appelle "Exportation" et je l'ai créé à partir de la requête "ReqDonnes". En utilisant l'autre spécificité d'exportation "export", ben ça marche pas avec du codage Visual Basic...

    Bon je joins le fichier avec la requête et la nouvelle spécificité et le code qui va avec.
    Fichiers attachés Fichiers attachés

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    bonsoir,

    j'ai fait le test avec votre ca marche je vais essayer de le refaire dans ma base orginale et vous tiens au courant

    Mais il y a un truc que je comprend pas alors :
    pourquoi quand j'exporte /impote manuellement en chargeant spécificité d'exportation "export" je vois bien que ""Inclure les noms des champs sur la première ligne"" est cochée sans que les champs apparaisent sur le csv?

    en fait j'ai enregistré la spécification en important un ficher manuellement et vous le faites apparement en exportant ca change qq chose?

    est ce que une spécifiation est liée a une table/requete et qu"elle ne marche plus si on l'utilise avec une autre table /requetes?
    merci

  12. #12
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 324
    Points : 470
    Points
    470
    Par défaut
    Citation Envoyé par moimemessssssssss Voir le message
    bonsoir,

    en fait j'ai enregistré la spécification en important un ficher manuellement et vous le faites apparement en exportant ca change qq chose?
    Ben oui ça change tout non?

    Citation Envoyé par moimemessssssssss Voir le message
    est ce que une spécifiation est liée a une table/requete et qu"elle ne marche plus si on l'utilise avec une autre table /requetes?
    merci
    Je pense que c'est lié au moins à la structure de la table/requête.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 57
    Points
    57
    Par défaut
    bonsoir


    Citation:

    Ben oui ça change tout non?
    ah ok je le savais pas car je pensais qu'une spécification pouvant etre utilisée pour exporter ou importer une table /requête sans difference! je saurais pour la prochiane fois .

    merci

  14. #14
    Membre à l'essai

    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Mai 2015
    Messages : 6
    Points : 17
    Points
    17
    Billets dans le blog
    1
    Par défaut Format non défini
    Bonjour,
    J'essaie d'exporter une requête au format CSV mais je n'y arrive pas suite à un message d'erreur lors de l'exécution de ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acExportDelim, "Exportation", "nomdemarequete", "chemindudossierdenregistrement\" & "MasterRelanceSMS " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".csv", True
    le message d'erreur dit que la spécification de fichier texte "Exportation" n'existe pas et que je ne peux pas exporter ni importer ou lier en utilisant cette spécification.

    Quelqu'un pourrait m'expliquer pourquoi ai je ce message d'erreur et pourquoi ca ne marche pas SVP?

    Merci.

  15. #15
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 841
    Points : 7 975
    Points
    7 975
    Par défaut
    Bonjour,

    Le message a l'air clair. Tu n'as pas créé de modèle d'exportation sous le nom "Exportation".
    Pour le créer, je te prie de voir cette discussion similaire à la tienne.

    Cordialement,

  16. #16
    Membre à l'essai

    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Mai 2015
    Messages : 6
    Points : 17
    Points
    17
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par madefemere Voir le message
    Bonjour,

    Le message a l'air clair. Tu n'as pas créé de modèle d'exportation sous le nom "Exportation".
    Pour le créer, je te prie de voir cette discussion similaire à la tienne.

    Cordialement,
    Bonjour,
    Je me disais bien qu'il manquait quelque chose.
    Merci beaucoup je vais explorer le lien que tu m'as laissé.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/05/2015, 13h59
  2. Réponses: 7
    Dernier message: 03/10/2007, 19h06
  3. Export resultat requete dans CSV et XLS ?
    Par wormseric dans le forum Oracle
    Réponses: 14
    Dernier message: 20/09/2006, 16h36
  4. Nommer la feuille du classeur Excel dans lequel on exporte une requête
    Par Thierry'' dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 20/09/2006, 08h41
  5. Exporter une requête paramétrée
    Par Al soltani dans le forum Access
    Réponses: 2
    Dernier message: 20/04/2006, 14h15

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