Bonjour Thierry,
Pour le listage voici la macro :
Sub Lister()
Dim Fichier As String
Dim NbFichier As Integer
Dim RechDos As Office.FileDialog
On Error Resume Next
ActiveSheet.Unprotect "."
Set RechDos = Application.FileDialog(msoFileDialogFolderPicker)
RechDos.Title = "Sélectionnez un dossier..."
If RechDos.Show() Then Dos = RechDos.SelectedItems(1) & "\"
Sheets("Feuil1").Range("D1").Value = Dos
Fichier = Dir(Dos)
Do While Fichier <> ""
NbFichier = NbFichier + 1
Sheets("Feuil1").Range("A" & NbFichier + 1) = Fichier
Fichier = Dir
Loop
ActiveSheet.Protect "."
End Sub
1- On peux continuer avec "NbFichier" non définit donc = 0 et ajouter a ton ton nombre de fichier une valeur ici 1
Sheets("Feuil1").Range("A" & NbFichier +1) = Fichier
On peut aussi définir "NbFichier =1" donc quand le listage va se faire, il va commencer a la ligne 2 car NbFichier = NbFichier+1 (soit 1+1)
Mais la variable nommé "NbFichier" doit devenir "LigFichier" ("nombre de fichier" en "ligne de fichier") [Pour un meilleur suivi]
2- ActiveSheet.Unprotect et Protect avant et apres le listage avec le mdp a la suite "."
3- J'ai rajouté "On Error Resume Next" pour l'erreur quand tu clic sur annuler
Qui continu la suite de la macro sans tenir compte de l'erreur
A+