lire et importer plusieurs fichier

  • Initiateur de la discussion Initiateur de la discussion kohafa
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

K

kohafa

Guest
Bonjour à tous
permettez moi de poser ma question toute en espérant trouver de l'aide, que je trouve toujour et à chaque fois que je retourne sur ce forum auquel je suis très reconnaissant.
j'utilise le code suivant pour ouvrir les fichier d'un dossier, sachant que ces fichier contier une ligne de donnée par fichier.
càd : le fichier 'fichier1.csv' contient juste une ligne (des champs d'une table access, séparé par des ';' (point virgule)
************************
Sub ChercheetOuvreFichier()
Set fichcherche = Application.FileSearch
With fichcherche

.LookIn = 'C:\\Contact'
.Filename = '*.csv' 'ou '*.txt'
If .Execute > 0 Then
MsgBox .FoundFiles.Count & ' Fichier(s) a (ont) été trouvé(s).'
For I = 1 To .FoundFiles.Count
Workbooks.Open Filename:=.FoundFiles(I)
On Error Resume Next
Next I
Else
MsgBox 'Aucun fichier n'a été trouvé.'
End If
End With
End Sub
*****************************
j'espère si quelqu'un peu m'aider à lire les fichier(tous les fichiers) sans les ouvrir. et mettre leurs contenu dans ma feuille excel. j'explique bien.
lire le premier fichier, mettre son contenu dans la 1ere ligne de ma feuille excel, puis lire le 2eme et mettre son contenu dans le 2eme ligne de ma feuille excel et ainsi de suite.
j'espère que vous comprenez ma question et que vous pouvez m'aider. avec tous mes respect
************************
 
Bonjour kohafa, le forum

Peut etre comme ceci :


Sub ChercheetOuvreFichier()
Dim chemin As String
Dim nom As String
Dim ligne As Byte, i As Byte
Dim valeur As String
Dim tablo

ligne = 1
chemin = 'c:\\\\\\\\contact\\\\\\\\'
nom = Dir(chemin & '*.csv')


Do While Not nom = ''
       
Open chemin & nom For Input As #1
        Line
Input #1, valeur
        tablo = Split(valeur, ';')
       
For i = 0 To UBound(tablo)
                Cells(ligne, i + 1) = tablo(i)
       
Next i
ligne = ligne + 1
nom = Dir
Close #1
Loop

End Sub


salut
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour