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 28 29 30 31 32 33 34 35
| Sub ChargementMultiFichiers()
Dim i As Integer
Dim Wb As Workbook
Dim Sh As Worksheet
Dim NewLig As Long
Dim FilterIndex As Byte
Dim NomduFichier As Variant
Dim Title As String, Filt As String
' Descriptif extensions fichiers
Filt = "Text Files (*.txt),*.txt," & "Lotus Files (*.prn),*.prn," & "Comma Separated Files (*.csv),*.csv," & "ASCII Files (*.asc),*.asc," & "All Files (*.*),*.*"
' Display *.* by default
FilterIndex = 5
' Donne le titre de la boite de dialogue
Title = "Selectionner le fichier"
' Récupération des noms de fichiers
NomduFichier = Application.GetOpenFilename(FileFilter:=Filt, FilterIndex:=FilterIndex, Title:=Title, MultiSelect:=True)
' Exit si annule boite dialogue
If Not IsArray(NomduFichier) Then
MsgBox "Aucun fichier sélectionné."
Else
Application.ScreenUpdating = False
Set Sh = ThisWorkbook.Worksheets("Feuil1")
'Renvoie le chemin et noms des fichiers sélectionnés
For i = LBound(NomduFichier) To UBound(NomduFichier)
Set Wb = Workbooks.Open(NomduFichier(i))
NewLig = Sh.Cells(Sh.Rows.Count, "A").End(xlUp).Row + 1
Worksheets(1).Range("A1:A10").Copy Sh.Range("A" & NewLig) 'copie les cellules A1:A10 du fichier sélectionné
Wb.Close SaveChanges:=False
Next i
Set Wb = Nothing
Set Sh = Nothing
End If
End Sub |