CopyFile

Declaración:
Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Descripción:
La función CopyFile copia un archivo o un directorio de una ubicación a otra, si cambiamos el parámetro bFailIfExists se puede hacer que en caso de que exista el archivo o directorio el mismo se sobreescriba.
Parámetros:
ByVal lpExistingFileName As String
Aqui se coloca la ubicación y el nombre del archivo o directorio a copiar.
ByVal lpNewFileName As String
Aqui se coloca la ubicación y el nombre de destino para el directorio o archivo a copiar.
ByVal bFailIfExists As Long
Si queremos que la función en caso de que ya exista un archivo o directorio con ese nombre lo sobreescriba colocamos 0, de no querer que se sobrescriba se coloca 1.
Valor de retorno:
Se retorna cero (0) es por que hubo algún error, retorna 1 si se realizo bien.
Uso:
Dim ValorRetorno As Long 'Variable para el valor de retorno
'Para usar el ejemplo cree una carpeta en su Disco C:\ con el nombre Nueva Carpeta (por defecto aparece ese)

ValorRetorno = CopyFile("C:\Nueva carpeta", "C:\Windows\Escritorio\Nueva Carpeta", 1)
'En este caso copia "C:\Nueva Carpeta" a "C:\Windows\Escritorio\Nueva Carpeta"
'Como se coloco 1 en el parámetro bFailIfExists, si existe el archivo la función retorna 0.
If ValorRetorno = 0 Then Msgbox "El archivo ya existe" 'muestra un mensaje avisando que el archivo ya existe