Comunque funziona ed è una f..g...ta pazzaesca!!
Senza contare che se non ci fosse un metodo per identificare la cartella da sostituire anche su altri pc, mi basta fare così:

Dim Startfolder As String = "C:\"
Dim Targetfolder As String = "C:\Users\Public\Documents\Estrazione\"
Dim Finalfolder As String = Replace(FilesListBox.SelectedItem, Startfolder, Targetfolder)
MsgBox("The file has been moved to:" & vbCrLf & Finalfolder.ToString)
'copy whole folder including subdirectories
Call Copy(FilesListBox.SelectedItem.ToString, Finalfolder)

Creando magari una path più lunga ma comunque indicando con una messagebox dove vengono salvate le cartelle.

tu che ne pensi? c'è un metodo generico per rendere il programma versatile o va bene la mia soluzione?

P.S. avevo commentato il silent per vedere se mi dava l'avviso di sovrascrittura del file :-) e lo fa, ma penso che lo userò

Grazie 1000