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 :

importer un fichier .txt vers ma table access en vba ?


Sujet :

VBA Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut importer un fichier .txt vers ma table access en vba ?
    Bonjour,
    J'aimerai savoir comment faire pour importer un fichier .txt vers ma table access en vba ?

    voici ma 1 ère étape mais fonctionne pas...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Bascule2_Click()
    DoCmd.TransferText acImportDelim, (";"), "E:\v1\import.txt", False
    End Sub
    je voudrai savoir comment faire et si possible ajouter un message après trasfert si cela fonctionne ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    voici ma 1 ère étape mais fonctionne pas...
    Message d'alerte ? Ce n'est pas le résultat attendu ?

    Comment veux-tu que l'on trouve ce qui ne fonctionne pas ?

    Peut-on avoir un exemple de ton fichier texte, car là on ne sait même pas si tu prends la bonne syntaxe, car on aucune idée du fichier en entrée.

    Et à mon avis les () sont de trop.

    Philippe
    Dernière modification par Invité ; 19/10/2011 à 07h38.

  3. #3
    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 524
    Points
    14 524
    Par défaut
    Bonjour,

    1 - Lire l'aide en ligne de la fonction.
    2 - Voir la faq :
    http://access.developpez.com/faq/?pa...#ImportFichier
    3 - Ne pas mettre les paramètres au hasard, il n'y a aucune chance que cela fonctionne écrit comme cela

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Bonjour merci

    Tout d'abord mercià vous deux , mais cependant

    --> Pour Arkham46 1-/ Le modèle est enregistré dans une table système MSysIMEXSpecs ?? de manière permanente dans la base pour pouvoir être utilisé dans la commande DoCmd.transfertText. Un peu technique pour moi que faut-il faire car j'ai essayé et j'ai pas capté?

    --> Pour JOCHMANS

    2-/ J'ai une methode simple qui marche pour importer un fichier excel qui marche très bien maintenant je passe sur un format .txt pour importer de manière auto en vba je n'arrive que dois-je faire dans mon code pour que cela fonctionne ? déclarer un variable spécifique pour un fichier .txt pour déclancher la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acImportDelim, "NomModel", "TableDestination", "FichierSource"
    car cela correspondrai à mon besoin, je veux faire simple un click puis = un import dans une table comme je fais pour excel.

    voici mon modèle qui marche sur excel :

    Dans mon formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub TestImportExcel___Click___Click()
    Dim varFeuilles As Variant
     
     
      varFeuilles = Array("ma feuille")
     
       ImportExcel "C:\fichier", _
        varFeuilles, True, "ma feuille"
    End Sub
    Dans mon module :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For Each strFeuille In varFeuilles
        DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, _
          strTable, strChemin, blnNoms, strFeuille & "!"
     
      Next
    Comment puis-je l'adapter à mon cas cette fois ci en .txt ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Bonjour,

    Après plusieurs test et adaptation la fonction ne veut pas importer mon fichier .txt dans ma table existante, je n'arrive pas à avancer et adapter une code vba pour l'import vers une table

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Peut-on avoir un exemple de ton fichier texte, car là on ne sait même pas si tu prends la bonne syntaxe, car on aucune idée du fichier en entrée.
    Tant que tu ne répondras pas aux questions, tu n'aurais pas de réponses cohérentes, car un fichier texte ne veut rien dire, il y a tellement de possibilités de formatage de celui-ci.

    Philippe

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

    Informations forums :
    Inscription : Octobre 2009
    Messages : 58
    Points : 64
    Points
    64
    Par défaut
    En ce qui me concerne, voila comment j'ai procédé :
    j'ai enregistrer une importation dans access (option données externes/importations enregistrées)
    Ensuite d-ans mon formulaire j'ai un bouton qui lance automatiquement l'importation de mon fich.txt dans ma table
    @+
    vince

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Bonjour,

    Voici un exemple de ichier texte que je voudrais importer automatiquement vers ma tabele access déjà éxistante.

    Comme précisé plus haut j 'arrive à importer un fichier excel mais pas de fichier .txt comment faire ?

  9. #9
    Membre actif
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Mars 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : Mars 2009
    Messages : 177
    Points : 270
    Points
    270
    Par défaut
    Bonsoir,

    Tu dois créer d'abord un format d'importation et y faire appel ensuite dans l'instruction d'importation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acImportDelim, "formatImportation", "TableCible", "chemin"
    Pour créer le format d'importation, il suffit de faire une importation manuelle en utilisant l'assistant et avant de terminer celle ci sauvegarder le format en cliquant sur "avancé" puis sur "enregistrer sous".

    Cordialement

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je savais bien qu'il fallait le fichier texte, ton texte est un fichier à longueur fixe.

    Il faut faire l'import manuel et fixer grâce à l'assistant les longueurs des champs et enregistrer le schéma.

    Philippe

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Bonjour

    1-/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Pour créer le format d'importation, il suffit de faire une importation manuelle en utilisant l'assistant et avant de terminer celle ci sauvegarder le format en cliquant sur "avancé" puis sur "enregistrer sous".
    
    c fait mais comment voir le code vba car j 'ai regardé le script il y a rien est -ce normale ?

    2-/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Il faut faire l'import manuel et fixer grâce à l'assistant les longueurs des champs et enregistrer le schéma
    j'ai réussi à enregistrer mais n'arrive pas à faire une macro pour importer auto l'adresse du fichier d 'import pour écraser les données avant import et situer le fichier à importer

  12. #12
    Invité
    Invité(e)
    Par défaut
    Re

    Il serait bon que tu lises ce que l'on écrit :

    Arkham ta donner un lien avec tout : http://access.developpez.com/faq/?pa...#ImportFichier

    Sauf que dans ton cas c'est un acImportFixed.

    Philippe

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    RE

    Bonjout ,

    Je n'arrive pas à solutionner ni à trouver une explication clair de la fonction DoCmd.TransferText en acImportFixed.

    Contexte : Import d'un fichier texte vers une table de même format.

    En effet j'ai trouvé deux solutions. La première très documentée est l'utilisation d'un schema.ini. Mais d'après ce que j'ai vu il faut mettre en section le nom du fichier. Donc je ne peux pas solutionner mon problème.

    L'autre solution mais je n'ai rien trouvé dessus c'est d'utiliser une chaine mais je n'ai rien compris, car les exemples que j'ai vu ne traite pas principalement de cette fonction.

  14. #14
    Invité
    Invité(e)
    Par défaut
    Re

    Si tu ne suis pas les indications du lien, je ne sais quoi dire de plus, car tu as tout le fait de faire l'import manuel, de l'enregistrer, de garder le nom dans la ligne, sauf que dans l'exemple de la FAQ il faut remplacer le Delimited par du Fixed.

    Je ne vois pas ce que l'on peut faire de plus, car cette méthode fonctionne très bien, je l'utilise régulièrement, et je l'ai encore utilisée hier matin.

    Philippe

Discussions similaires

  1. importer un nombre n de fichiers excel vers Une table access
    Par mimieloic dans le forum VBA Access
    Réponses: 33
    Dernier message: 22/05/2015, 15h45
  2. [AC-2007] Importation de fichier txt vers access
    Par gaboujoel dans le forum VBA Access
    Réponses: 6
    Dernier message: 02/08/2013, 16h34
  3. [VB6]Importer un fichier texte dans une table ACCESS
    Par jean-pierre96 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 26/02/2013, 15h55
  4. [AC-2000] Problème Import fichier .txt dans une table Access
    Par sylviobarca dans le forum VBA Access
    Réponses: 3
    Dernier message: 30/12/2010, 17h17
  5. [AC-2000] VBA, importation particulière fichier Excel vers une table access
    Par ElCyril dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/12/2010, 01h05

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