Si prega di provare in questo modo.
Copia o sposta un file
Per un file è possibile utilizzare la funzione VBA Name e FileCopy e per intere cartelle o molti file utilizzare gli altri esempi di macro in questa pagina.
Sub Copia_Un_File()
FileCopy "C:\Utenti\Ron\SourceFolder\Test.xls", "C:\Utenti\Ron\DestFolder\Test.xls"
End Sub
Sub Move_Rename_One_File()
'Puoi cambiare il percorso e il nome del file
Nome "C:\Users\Ron\SourceFolder\Test.xls" As "C:\Users\Ron\DestFolder\TestNew.xls"
End Sub
Copia o sposta più file o completa cartelle
Nota: leggere le righe di codice commentate nel codice
Sottocopia_cartella()
'Questo esempio copia tutti i file e le sottocartelle da FromPath a ToPath.
'Nota: se ToPath esiste già, sovrascriverà i file esistenti in questa cartella
'se ToPath non esiste, verrà creato per te.
Oscura UST come oggetto
Dim FromPath come stringa
Dim ToPath come stringa
FromPath = "C:\Utenti\Ron\Dati" '<< Modifica
ToPath = "C:\Utenti\Ron\Test" '<< Modifica
'Se vuoi creare un backup della tua cartella ogni volta che esegui questa macro
'puoi creare una cartella univoca con una data/ora.
'ToPath = "C:\Utenti\Ron\" & Formato(Ora, "aaaa-mm-gg h-mm-ss")
Se Right(FromPath, 1) = "\" Allora
DaPercorso = Sinistra(DaPercorso, Len(DaPercorso) - 1)
End If
Se Right(ToPath, 1) = "\" Allora
ToPath = Sinistra(ToPath, Len(ToPath) - 1)
End If
Imposta FSO = CreateObject("scripting.filesystemobject")
Se FSO.FolderExists(FromPath) = False allora
MsgBox FromPath & "non esiste"
Exit Sub
End If
FSO.CopyFolder Sorgente:=FromPath, Destinazione:=ToPath
MsgBox "Puoi trovare i file e le sottocartelle da " & FromPath & " in " & ToPath
End Sub