Lire des fichier txt a partir de access vba

h_adil Messages postés 231 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 10 juin 2009 - 22 juin 2007 à 14:55
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 - 23 juin 2007 à 04:22
bonjour,
j'ai un dossier nomé tempo où je reçois des fichiers au fil du temps f1,f2,f3... .
ces fichier txt je doit les integrer dans ma base de données access.
donc ce que je veut faire c'est de creer une boucle qui identifier ces fichiers, et les integrer dans ma base de doonnées (pour les integrer j'ai trouvé ce code mais il est unique pour un seul fichier). cette boucle est declancher par un bouton commande

DoCmd.TransferText acImport, "formatagetoto", _
    "TABLESOURCE", "C:\Documents and Settings\Bureau\dossier\f1.TXT"
programation .....

4 réponses

Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
22 juin 2007 à 15:01
Tes fichiers ont un nom normé, à savoir f1, f2, f3, f4 ? ...

Dans ce cas, il te suffit d'écrire ta boucle de la façon suivante :

For i = 1 to x 'où x est le dernier numéro de fichier, à toi de savoir comment tu veux le renseigner
   DoCmd.TransferText acImport, "formatagetoto", _
       "TABLESOURCE", "C:\Documents and Settings\Bureau\dossier\f" & i & ".TXT"
next i

Molenn
0
h_adil Messages postés 231 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 10 juin 2009
22 juin 2007 à 15:06
enfaite le nom du fichier que je reçois est
nom de fichier_20070614115213. 4 permier chiffres pour lannée, puis le mois, et la date du jour, et un numeros squentiel

programation .....
0
cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
22 juin 2007 à 15:36
Salut,

Tu devrais regardé sur www.Codyx.org les snippets présent, il me semble qu'il y ades fonction toutes prêtes.....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 26
23 juin 2007 à 04:22
 Bonjour,

L'exemple ci-dessous, en vbs, est une adaptation de
http://www.codyx.org/snippet_trier-liste-fichiers-date_110.aspx

Option Explicit

Call TriRepertoire

'---lister les fichiers du répertoire ---
Sub TriRepertoire()
Dim objFso, objShell
Dim strDesktop, strPath, strFile, strTabName
Dim i, imax, z, valeur, Cible, liste

Set objFso = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("WScript.Shell")
strDesktop = objShell.SpecialFolders("Desktop")
strPath = objShell.SpecialFolders(4) & "\Dossier"

imax = 0
'début de l'énumération
For Each strFile In objFso.GetFolder(strPath).Files
    strTabName = Split(strFile.Name,"_")
    'le nom du fichier sous la forme: nom de fichier_20070614115213.txt    If UBound(strTabName) 1 And UCase(Right(strFile.Name, 4)) ".TXT" Then
       If Len(strTabName(1)) = 18 Then
          imax = imax + 1
          ReDim Preserve Tableau(2, imax)
          Tableau(1, imax) = strTabName(0)
          Tableau(2, imax) = strTabName(1)  
       End If
    End if
Next
'---tri---
Do
   valeur = 0
   For i = 1 To imax - 1
       If CStr(Tableau(2, i)) > CStr(Tableau(2, i + 1)) Then
          For z = 1 To 2
              Cible = Tableau(z, i)
              Tableau(z, i) = Tableau(z, i + 1)
              Tableau(z, i + 1) = Cible
          Next
          valeur = 1
       End If
   Next
Loop While Valeur = 1
'Affichage du résultat classé
For i = 1 To imax
'    DoCmd.TransferText acImport, "formatagetoto", _
'       "TABLESOURCE", strPath & Tableau(1, i) & "_" & Tableau(2, i)
    liste = liste &vbTab& strPath & Tableau(1, i) & "_" & Tableau(2, i) &vbCr
    If i = imax Then MsgBox  liste ,,"Liste du répertoire" &Space(3)& strPath
Next
Set objFso = nothing
Set objShell = nothing
End Sub

jean-marc
0