1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
Sub importation_fichier_csv()
fichier_principal = ActiveWorkbook.name
feuillet_principal = ActiveSheet.name
filetoopen = Application.GetOpenFilename("Fichiers texte , *.csv; *.txt; *.wsd", 2, Title, MultiSelect)
If filetoopen <> False And InStrRev(filetoopen, "\") > 0 Then
Set fs = CreateObject("Scripting.FileSystemObject") ' on défini un FileSystem pour traiter des fichiers et répertoires
chemin_Fichier = Mid(filetoopen, 1, InStrRev(filetoopen, "\"))
Set f_Dir = fs.getFolder(chemin_Fichier).Files ' f_Dir renvoi la collection des noms de fichier présent dans le G_repertoire quelque soit le type de fic excel ou autre .
For Each f1 In f_Dir
If InStr(1, f1.name, ".wsd") > 0 Then
nb_ligne_avant = Workbooks(fichier_principal).Worksheets(feuillet_principal).Range("A65536").End(xlUp).Row
Workbooks.Open f1.name ' il faut déterminer la syntaxe ne fonction des caractéristiques séparateur , format ...
feuillet_import = ActiveSheet.name
nb_ligne_import = Workbooks(f1.name).Worksheets(feuillet_import).Range("A65536").End(xlUp).Row
'on recopie les lignes fichiers
Workbooks(fichier_principal).Worksheets(feuillet_principal).Rows(CStr(nb_ligne_avant + 1) & ":" & CStr(nb_ligne_avant + nb_ligne_import)).Value = Workbooks(f1.name).Worksheets(feuillet_import).Rows("1:" & nb_ligne_import).Value
Workbooks(f1.name).Close (savechanges = False)
nb_fic = nb_fic + 1
End If
Next
End If
End Sub |
Partager