Crear backup aun archivo excel

Hola de nuevo por aca por un poco de su ayuda.

Tengo el siguiente código para crear una copia de seguridad de mi archivo:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Sabe
ActiveWorkbook.SaveAs Filename:="G:\Trabajo\Copia.xlsm"
End Sub

Cuando lo ejecuto cerrando el archivo me aparece un msgbox con el siguiente mensaje

ya existe un archivo con el nombre"xxxxx\xxxx en esta ubicación, desea remplazar el archivo existente y me aparecen las tres opciones si, no, cancelar, el problema radica en cuando le doy no o cancelar me aparece un error.

lo que desearía seria que si le doy en si me aparezca un msgbox"copia realizada"

si le doy en no msgbox"copia no realizada" y si le doy en cancelar me apareciera msgbox"copia cancelada"

gracias por su inmensa ayuda y por dedicar parte de su tiempo a ayudar a los demás.

1 Respuesta

Respuesta
1

Cambia la macro por esta:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'cierra archivo
'por.Dam
ActiveWorkbook.Save
On Error Resume Next
nomarch = "C:\Copia.xls"
archi = Dir(nomarch)
If archi = "" Then
    'MsgBox Err.Number
    ActiveWorkbook.SaveAs Filename:=nomarch
Else
    Application.DisplayAlerts = False
    resp = MsgBox("Ya existe un archivo con nombre ''" & nomarch & "'' en esta ubicación. ¿Desea reemplazar el archivo existente?", vbInformation + vbYesNoCancel)
    If resp = vbYes Then
        ActiveWorkbook.SaveAs Filename:=nomarch
        MsgBox "copia realizada"
    ElseIf resp = vbNo Then
        MsgBox "copia no realizada"
    ElseIf resp = vbCancel Then
        MsgBox "copia cancelada"
        Cancel = True
    End If
    Application.DisplayAlerts = True
End If
End Sub

Saludos.Dam
Si es lo que necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas