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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| Dim ClasseurResultat As Workbook
Dim L_Cible As Long
Sub Scan()
Dim FSO
Dim RepRacine As String
Set ClasseurResultat = ActiveWorkbook
Set MyFeuilleResultat = ClasseurResultat.Worksheets(1)
L_Cible = MyFeuilleResultat.UsedRange.Rows.Count +1
RepRacine = ClasseurResultat.Path
If Right(RepRacine, 1) <> "\" Then RepRacine = RepRacine & "\"
Set FSO = CreateObject("Scripting.FileSystemObject")
'Je scan le répertoire source.
If FSO.FolderExists(RepRacine) Then
Set Rep = FSO.GetFolder(RepRacine)
Set ListFichiers = Rep.Files
For Each MonFich In ListFichiers
If InStr(1, UCase(MonFich.Name), ".XLS") <> 0 Then
' Je traite le fichier.
Traitement MonFich.Path
End If
Next
End If
MyFeuilleResultat.Cells.EntireColumn.AutoFit
End Sub
Sub Traitement(Fichier As String)
On Error Resume Next
Dim L As Long
Dim C As Long
Dim F As Long
Dim MyRange As Range
Dim MyExcel As Object
Set MyExcel = CreateObject("Excel.Application")
Dim MyClasseur As Workbook
MyExcel.Visible = True
Set MyClasseur = MyExcel.Workbooks.Open(Fichier) 'J'ouvre le fichier.
Set MyRange = MyClasseur.Worksheets(1).Range("A5:B5")
MyFeuilleResultat.Cells(L_Cible, 1) = MyRange(1, 1)
MyFeuilleResultat.Cells(L_Cible, 2) = MyRange(1, 2)
L_Cible = L_Cible + 1
MyClasseur.Close False
MyExcel.Quit
End Sub
Sub Entete(MyFeuille As Worksheet)
Dim col As Long
For col = 1 To Titre.Count
MyFeuille.Cells(1, col) = Titre(col)
MiseEnForm MyFeuille.Cells(1, col)
Next
End Sub
Sub MiseEnForm(MyRange As Range)
With MyRange.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 0
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With MyRange.Font
.Color = 16777215
.TintAndShade = 0
End With
End Sub |
Partager