Pon el siguiente código en el botón para crear una copia
Sub Crear_Copia()
'Por.Dante Amor
'crea una copia
Application.DisplayAlerts = False
ruta = ThisWorkbook.Path & "\"
nombre = "copia.xlsm"
ThisWorkbook.SaveAs ruta & nombre
End Sub
En tu mismo libro "original", pero en los eventos de thisworkbook pon en el siguiente código:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Por.Dante Amor
With ThisWorkbook
If InStr(1, LCase(.Name), "copia") > 0 Then
On Error Resume Next
.Saved = True
.ChangeFileAccess xlReadOnly
Kill .FullName
.Close False
End If
End With
End Sub
Instrucciones para poner la macro en los eventos ThisWorkbook
- Abre tu libro de excel
- Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
- Del lado izquierdo dice: VBAProject, abajo dale doble click a ThisWorkbook
- En el panel del lado derecho copia la macro
Con la primera macro se crea una "copia" de tu libro original, en automático se cierra tu libro "original", solamente tienes en pantalla el libro "copia". Cuando cierres el libro "copia" en automático se borrará. En tu carpeta solamente podrás ver el archivo "original".
.
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
.
Avísame cualquier duda
.