Bonjour,

Je dispose d'une macro permettant d'aller chercher le contenu de diverses cellules dans des classeurs fermés. J'aimerais la modifier pour qu'a la place elle ouvre les classeurs, pioche les données et referme les classeurs. mais je n'ai pas la moindre idée de comment faire...

Le but étant de gagner du temps car cette macro est loooongue voir trèèès loooongue à s'executer. dès que je dépasse la dizaine de fichier à traiter.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Option Explicit
 
Sub extraction() 
Dim nbre As Long, lig As Long, cptr As Long
Dim Fichier As String
Dim txt As String
 
    nbre = Application.CountA(Range("B7:B1000")) 
 
    lig = ligdep
    Application.ScreenUpdating = False
    For cptr = 1 To nbre
        Fichier = Cells(lig, 2)
 
        txt = "'" & Chemin & "\[" & Fichier & "]Feuil1 (2)'!R"
 
       Cells(lig, 4) = ExecuteExcel4Macro(txt & "15C3")
       Cells(lig + 1, 4) = ExecuteExcel4Macro(txt & "20C3")
       Cells(lig + 2, 4) = ExecuteExcel4Macro(txt & "25C3")
       Cells(lig + 3, 4) = ExecuteExcel4Macro(txt & "30C3")
       Cells(lig + 4, 4) = ExecuteExcel4Macro(txt & "35C3")
       Cells(lig, 5) = ExecuteExcel4Macro(txt & "15C5")
       Cells(lig + 1, 5) = ExecuteExcel4Macro(txt & "20C5")
       Cells(lig + 2, 5) = ExecuteExcel4Macro(txt & "25C5")
       Cells(lig + 3, 5) = ExecuteExcel4Macro(txt & "30C5")
       Cells(lig + 4, 5) = ExecuteExcel4Macro(txt & "35C5")
       Cells(lig, 6) = ExecuteExcel4Macro(txt & "15C11")
       Cells(lig + 1, 6) = ExecuteExcel4Macro(txt & "20C13")
       Cells(lig + 2, 6) = ExecuteExcel4Macro(txt & "25C13")
       Cells(lig + 3, 6) = ExecuteExcel4Macro(txt & "30C13")
       Cells(lig + 4, 6) = ExecuteExcel4Macro(txt & "35C13")
        lig = lig + 5
 
    Next
 
End Sub
Si une personne sympatique aimerait m'apporter de l'aide .

Merci !