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 36 37 38 39 40
| Dim fs As New FileStream(dossier_choisi & "\" & "recap" & ".xls", FileMode.Create, FileAccess.Write, FileShare.Write)
fs.Close()
Dim dir As New DirectoryInfo(dossier_choisi)
Dim xlApp As New Application
Dim xlBook As Workbook 'ici fichier de reception des données
Dim xlBook2 As Workbook 'ici variable qui acceuillera le fichier donneur de données
Dim xlSheet As New Worksheet
xlApp = CType(CreateObject("Excel.Application"), Application)
xlBook = xlApp.Workbooks.Add
xlSheet = CType(xlBook.Worksheets(1), Worksheet)
Dim coordonnee_x As Integer = 1
Dim coordonnee_y As Integer = 1
Dim nombre_colonne = 10
For Each fichier In dir.GetFiles
If fichier.Name.Contains(".xls") Then
xlBook2 = xlApp.Workbooks.Open(dossier_choisi & "\" & fichier.Name)
Dim nombre_ligne As Integer
For i = 1 To 1000 'arbitraire... à améliorer
If xlBook2.Worksheets(1).cells(i, 1).value = "" Then
nombre_ligne = i
Exit For
End If
Next
xlBook2.Worksheets(1).Range(xlBook2.Worksheets(1).Cells(1, 1), xlBook2.Worksheets(1).Cells(nombre_ligne, 10)).Copy()
xlBook.Worksheets(1).paste(xlBook.Worksheets(1).cells(coordonnee_x, coordonnee_y))
coordonnee_x = coordonnee_x + nombre_ligne
End If
Next
End If |