Bonjour,
Je suis nouveau en VBA, j'ai suivi un semestre (20aine d'heure au cnam) et je bloque sur l'appel d'une fonction.
Le but étant, dans un dossier, d'ouvrir des fichiers un par un et, par fichier, d'alimenter un tableau VBA tampon.
Le code bloque sur

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Public Sub BoucleFichiers()
    Dim Dossier As String, Fichier As String

    'Définir le répertoire contenant les fichiers
    Dossier = "F:\T2RQ\0_Doc d'entrée\Echantillon\Etape 2\"

    'Boucler sur tous les fichiers xlsx du répertoire
    Fichier = Dir(Dossier & "*.xlsx")

    Do While Len(Fichier) > 0
        'écrit le résultat dans le fenêtre d'exécution (Ctrl + G)
        Debug.Print Dossier & Fichier
        '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''MA MACRO (début)
        Dim WB As Workbook
                
        Set WB = Workbooks.Open(Dossier & Fichier)
        'ReadOnly:=True
    
        '' Action extraction de l'information
        ' D'abords, le tableau qui servira à l'affectation des données
        Dim TabTampon()
        Dim NombreFRQ As Integer
        NombreFRQ Dossier
        ReDim TabTampon(NombreFRQ, 7)
        
        TabTampon(0) = Range("C8") 'IP
        TabTampon(1) = Range("J7") 'Ligne
        TabTampon(2) = Range("J10") 'Voie
        TabTampon(3) = Range("C10") 'BV
        TabTampon(4) = Range("J8") 'Gare
        TabTampon(5) = Range("AB7") 'Levé
        TabTampon(6) = Range("W7") 'Type
        TabTampon(7) = Range("G14") 'Risque
           
        'Passer à la ligne suivante dans mon tableau tampon
        '?
           
        '' Action extraction de l'information (fin)
        WB.Close True
        
        Set WB = Nothing
        
        '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''MA MACRO (fin)
        Fichier = Dir()
    Loop

End Sub

Function NombreFRQ(ByVal Dossier As String) As Integer
    Dim FSO As Object
 
    Set FSO = CreateObject("Scripting.FileSystemObject")
    NombreFRQ = FSO.GetFolder(Dossier).Files.Count
 
    Set FSO = Nothing
End Function
Merci pour votre aide