Bonjour
Ton code, corrigé comme ci-dessous liste tous les dossiers et tous les fichiers du dossier indiqué dans Text1
Private Sub cDir()
Dim S1 As String, S2 As String, sDir As String
sDir = sDir Text1.Text
If Right(sDir, 1) <> "" Then sDir = sDir & ""
S1 = Dir(sDir, vbDirectory)
While S1 <> ""
If (S1 <> ".") And (S1 <> "..") Then
S2 = sDir + S1
If Mid(Right(S2, 4), 1, 1) <> "." Then
Text2.Text = Text2.Text & S2 & "" & vbNewLine
Else
Text2.Text = Text2.Text & S2 & " " & FileLen(S2) & vbNewLine
End If
End If
S1 = Dir
Wend
Text2.Text = Text2.Text & vbNewLine
End Sub
Mais si tu veux lister les fichiers situés dans les sous-répertoires, il te faut une fonction récursive (qui s'appelle elle-même).
Tu en trouveras des exemples sur ce site, en particulier ICI.