se ho ben capito questo codice dovrebbe fare quello che cerchi:
N.B. inserisci in un form "FORM1" i seguenti componenti:
una TextBox chiamata "txt_curDir"
una TextBox chiamata "txt_newDir"
una ListBox chiamata "ListBox"
un Command button chiamato "cmd_visualizza"
poi:
codice:
Option Explicit
Dim dir_corrente As String
Private Sub cmd_visualizza_Click()
On Error GoTo cattura_exception
Dim ptr_file1 As String
dir_corrente = txt_curDir.Text & "\*"
If dir_corrente <> "" Then
ListBox.Clear
ptr_file1 = Dir$(dir_corrente)
While ptr_file1 <> ""
ListBox.AddItem ptr_file1
ptr_file1 = Dir$
Wend
Else
txt_curDir = "inseire un percorso es: ""C:\Documenti"""
End If
cattura_exception:
txt_curDir.Text = "Percorso non valido"
End Sub
Private Sub ListBox_Click()
On Error GoTo cattura_exception
Dim ptr_file1, ptr_file2 As String
ptr_file1 = ListBox.Text
ptr_file2 = Replace(ListBox.Text, Right$(ListBox.Text, 4), "")
MkDir txt_curDir.Text & "\" & ptr_file2
FileCopy txt_curDir.Text & "\" & ptr_file1, txt_curDir.Text & "\" & ptr_file2 & "\" & ptr_file1
txt_newDir.Text = ptr_file2
cattura_exception:
txt_newDir.Text = "Directory già esistente, Impossibile copiare il file"
End Sub