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

IHM Discussion :

Exporter une table Access vers Fichier "csv" [AC-365]


Sujet :

IHM

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut Exporter une table Access vers Fichier "csv"
    Bonjour,

    Je cherche à exporter une table Access sous forme de fichier "csv".

    J'ai utilisé l'instruction suivante (la table "LOCTbl99" existe bien dans la base!):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim FichCsv as String
     
    FichCsv="C:\Data\TestA.csv"
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "LOCTbl99", FichCsv
    A l'exécution, j'ai une erreur 3027 (Mise à jour impossible. La base de données ou l'objet est en lecture seule). En regardant l'aide Microsoft pour cette erreur, il semble que cela vienne du fait que l'exportation se fait en Excel et la conversion en csv après ne peut donc pas s'effectuer directement.

    Si c'est bien l'erreur, existe-t-il une solution pour un export direct en csv, autre que l'export en Excel puis à aprtir d'Access, l'ouverture et sauvegarde du fichier Excel en tant que csv?

    Merci d'avance


    Dominique

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    585
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 585
    Points : 1 080
    Points
    1 080
    Par défaut
    Bonjour,

    Un fichier CSV n'est pas un fichier Excel, c'est un fichier texte avec séparateur, même si Excel ouvre ce type de fichier de manière native.

    Il faut que tu utilises un TransferText et non sheet.

    ONTAYG

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par ONTAYG Voir le message
    Bonjour,

    Un fichier CSV n'est pas un fichier Excel, c'est un fichier texte avec séparateur, même si Excel ouvre ce type de fichier de manière native.

    Il faut que tu utilises un TransferText et non sheet.

    ONTAYG
    Merci de la réponse.
    En fait, j'avais commencé avec TransferText et créé la Specification
    Nom : 2021-08-26_182701.jpg
Affichages : 771
Taille : 48,9 Ko.

    Le code était:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    DoCmd.TransferText acExportDelim, "StdComma", "LOCTbl99", FichCsv
    J'ai eu une erreur d'objet non trouvé qui mentionnait "TestA#csv" alors que ce devrait être "TestA.csv".
    J'ai essayé avec une autre spécification en remplaçant Unicode (UTF-8) par Unicode, et en ajoutant (vu sur ce site) 65001 comme dernier paramètre dans les deux cas. Mais pas de changement.

    Donc comment faire pour que TransferText fonctionne?


    Dominique

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    585
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 585
    Points : 1 080
    Points
    1 080
    Par défaut
    Bizarre.

    En effet, j'utilise régulièrement cette expression et rarement de soucis.

    Ce que tu exportes c'est une table ou une requête ? Si c'est une requête c'est bien une requête de sélection ?

    Refais ton filtre d'export et regardes si tu n'as pas inversé filtre et source dans ta ligne.

    ONTAYG

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par ONTAYG Voir le message
    Bizarre.

    En effet, j'utilise régulièrement cette expression et rarement de soucis.

    Ce que tu exportes c'est une table ou une requête ? Si c'est une requête c'est bien une requête de sélection ?

    Refais ton filtre d'export et regardes si tu n'as pas inversé filtre et source dans ta ligne.

    ONTAYG
    Bonjour,

    C'est une table que j'exporte. Quand je l'exporte en Excel, pas de problème!


    Dominique

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 661
    Points : 14 643
    Points
    14 643
    Par défaut
    bonjour,
    vérifie si dans les champs exportés il n'y aurait pas le caractère virgule "," qui est le séparateur de champs de ton format et si oui, il faudrait utiliser un délimiteur de texte (option: Text Qualifier)
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,
    vérifie si dans les champs exportés il n'y aurait pas le caractère virgule "," qui est le séparateur de champs de ton format et si oui, il faudrait utiliser un délimiteur de texte (option: Text Qualifier)
    Merci de t'intéresser à mon problème.
    Après vérification, pas de virgule dans les champs exportés.


    Dominique

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Bonjour,


    Pas d'idées sur une éventuelle solution?


    Dominique

  9. #9
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Possible d'avoir un extrait de votre bdd avec uniquement votre table LOCTbl99 et des données peu sensibles. (en zip ou rar)
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  10. #10
    Membre éprouvé
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    585
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 585
    Points : 1 080
    Points
    1 080
    Par défaut
    il y a quoi comme données dans ta table ?

    Je suis étonné que le délimiteur de date soit le même que le délimiteur de décimal.

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Merci à vous deux.

    Je joins la partie de la BD qui pose problème.
    L'erreur est est sur la ligne du Docmd.Transfer Text.... et c'est:

    Nom : 2021-09-01_181412.jpg
Affichages : 696
Taille : 24,6 Ko

    Pour information, les deux exports également dans le code (db et Excel) fonctionnent parfaitement avec la même table.


    Dominique
    Fichiers attachés Fichiers attachés

  12. #12
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Sur l'évènement Private Sub BtnB13_Click(), à vous de vérifier si tout est ok avec les différents blocs If ... Then ... Else ... End If jusqu'à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acExportDelim, "StdComma", "LOCTbl99CustToExport", CustExportFilCv
    Chez moi cela fonctionne très bien, le fichier csv est bien généré.
    Par contre votre Paramétrage d'export est invalide. Chez moi (img1) je liste les champs de la table, chez vous (img2) j'ai le générique Field1, etc. et là ça coince.
    Images attachées Images attachées   
    Fichiers attachés Fichiers attachés
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 41
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par hyperion13 Voir le message
    Salut
    Sur l'évènement Private Sub BtnB13_Click(), à vous de vérifier si tout est ok avec les différents blocs If ... Then ... Else ... End If jusqu'à

    Chez moi cela fonctionne très bien, le fichier csv est bien généré.
    Par contre votre Paramétrage d'export est invalide. Chez moi (img1) je liste les champs de la table, chez vous (img2) j'ai le générique Field1, etc. et là ça coince.
    Bonjour,

    Merci de vos commentaires.
    En fait, sur la base de vos remarques, j'ai cherché plusieurs solutions et il semble qu'il ne faille pas indiquer de spécification d'exportation.
    Pour ce qui est du nom des champs, j'ai ajouté "True" à la fin du DoCmd pour indiquer que la table exportée contient les noms des champs.

    Avec ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
             DoCmd.TransferText acExportDelim, , "LOCTbl99CustToExport", CustExportFilCv, True
    l'export se fait correctement.

    Merci à tous.


    Dominique

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

Discussions similaires

  1. Exporter une table access en fichier CSV
    Par TheTcha dans le forum Access
    Réponses: 2
    Dernier message: 03/07/2013, 11h05
  2. exporter une table accesse vers fichier
    Par sanfour_walhan dans le forum VB.NET
    Réponses: 7
    Dernier message: 14/06/2011, 16h01
  3. Exporter une table Access vers Excel dans le dossier courant
    Par piflechien73 dans le forum VBA Access
    Réponses: 2
    Dernier message: 03/11/2009, 17h17
  4. Exporter une table Access vers plusieurs fichiers textes
    Par Carlv1428 dans le forum VBA Access
    Réponses: 1
    Dernier message: 17/08/2008, 00h12
  5. Problème pour exporter une table Access vers Excel
    Par PAULOM dans le forum Access
    Réponses: 22
    Dernier message: 02/05/2006, 13h42

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