Option Explicit Rem un CommandButton --> CmdCopy Rem un ListBox ----> Liste Private Sub CmdCopy_Click() Call Lire("C:\...\...") Call Ecrire("C:\...\cummul.txt") End Sub Private Sub Lire(path As String) Dim nom As String If Right$(path, 1) <> "" Then path = path & "" nom = Dir(path & "*.txt") Do While nom <> vbNullString ' attention de ne pas copier cummul sur lui même if nom <> "cummul.txt" then Liste.AddItem path & nom end if nom = Dir() Loop End Sub Private Sub Ecrire(nom As String) Dim zone As String Dim i As Integer Open nom For Output As #1 For i = 0 To Liste.ListCount - 1 Open Liste.List(i) For Input As #2 While Not EOF(2) Line Input #2, zone Print #1, zone Wend Close #2 Next Close #1 End Sub