Bonjour,

J'ai un code qui fonctionne très bien mais est statique. Ce code liste sur une cellule les fichier se trouvant dans un dossier.

Le problème est que le chemin du dossier est dans le code, et cela le rend statique. Je voudrais que le chemin du dossier soit dans la cellule A3, de telle sorte que l'utilisateur puisse le changer à volonté.

Merci d'avance pour vos contribution.


Ci-dessous mon code:

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
 
Sub ListeFichiers()
    Dim Dossier
 
'    Dossier = "C:\Users\Rasta\Bomboclat"   'Avec ça tout fonctionne bien, mais c'est statique!
    Dossier = Cells(3, 1).Value    '=>>>>>>> Le problème est ici, ça ne marche pas.
 
    ListeFichiers Dossier
 
    Columns("E:F").AutoFit
    MsgBox "C'est prêt!!!", vbInformation, "RastaBomboclat"
End Sub
 
Sub ListeFichiers(Repertoire As String)
    '
    'Nécessite d'activer la référence "Microsoft Scripting RunTime"
    '
    Dim FSO As Scripting.FileSystemObject
    Dim SourceFolder As Scripting.Folder
    Dim SubFolder As Scripting.Folder
    Dim FileItem As Scripting.File
    Dim i As Long
 
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set SourceFolder = FSO.GetFolder(Repertoire)
 
    i = Range("F10000").End(xlUp).Row + 1
 
    For Each FileItem In SourceFolder.Files
        Cells(i, 6) = FileItem.Name
        ActiveSheet.Hyperlinks.Add anchor:=Cells(i, 6), _
            Address:=FileItem.ParentFolder & "\" & FileItem.Name
        Cells(i, 7) = FileItem.Type
 
        i = i + 1
 
    Next FileItem
 
    For Each SubFolder In SourceFolder.SubFolders
        ListeFichiers SubFolder.Path
    Next SubFolder
 
End Sub