Bonjour forum
Je dispose d'une macro permettant de chercher des données dans diverses cellules de plusieurs fichiers Excel et de les placer dans un fichier "fille", la voici :
Or dès que le nombre de fichiers à traiter dépasse la dizaine cela deviens trèèèèès long !
Par exemple pour vous faire une idée de la chose, extraire les données de 10 fichiers met environ 2min30, pour 20 fichiers ça met environ 8 à 9 minutes pour tout extraire ! J'imagine pas quand j'aurais une cinquantaine de fichier à traiter^^".
Connaitriez vous des moyens permettant d'améliorer celà ? Acheter un PC plus puissant ?
Merci de votre aide !
Je dispose d'une macro permettant de chercher des données dans diverses cellules de plusieurs fichiers Excel et de les placer dans un fichier "fille", la voici :
Code:
Sub extraction()
Dim nbre As Long, lig As Long, cptr As Long
Dim fichier As String
nbre = Application.CountA(Range("B7:B1000"))
lig = ligdep
Application.ScreenUpdating = False
For cptr = 1 To nbre
fichier = Cells(lig, 2)
Cells(lig, 4) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R15C3")
Cells(lig + 1, 4) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R20C3")
Cells(lig + 2, 4) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R25C3")
Cells(lig + 3, 4) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R30C3")
Cells(lig + 4, 4) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R35C3")
Cells(lig, 5) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R15C5")
Cells(lig + 1, 5) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R20C5")
Cells(lig + 2, 5) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R25C5")
Cells(lig + 3, 5) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R30C5")
Cells(lig + 4, 5) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R35C5")
Cells(lig, 6) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R15C11")
Cells(lig + 1, 6) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R20C13")
Cells(lig + 2, 6) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R25C13")
Cells(lig + 3, 6) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R30C13")
Cells(lig + 4, 6) = ExecuteExcel4Macro("'" & Chemin & "\[" & fichier & "]Feuil1 (2)'!R35C13")
lig = lig + 5
Next
End Sub
Or dès que le nombre de fichiers à traiter dépasse la dizaine cela deviens trèèèèès long !
Par exemple pour vous faire une idée de la chose, extraire les données de 10 fichiers met environ 2min30, pour 20 fichiers ça met environ 8 à 9 minutes pour tout extraire ! J'imagine pas quand j'aurais une cinquantaine de fichier à traiter^^".
Connaitriez vous des moyens permettant d'améliorer celà ? Acheter un PC plus puissant ?
Merci de votre aide !
Dernière édition: