Macro mensaje cuando termina de grabar

Hola a todos
Tengo programada una macro que abre un libro, traspasa datos desde otro libro y cierra el primero guardando los datos. He introducido un msgbox para que muestre un mensaje si el proceso se ha realizado correctamente. Hasta aquí todo va bien
Mi problema es que, el mensaje se muestra antes de que termine de guardar el fichero, y quisiera que se mostrar cuando el proceso de salvado ha acabado.
¿Hay alguna instrucción o macro que haga esto?
La macro programada es esta:
Workbooks(dianombre & ".xlsx").Save
    Workbooks(dianombre & ".xlsx").Close
    MsgBox ("Fichero guardado correctamente")
Gracias
Respuesta
1
Prueba utilizando el evento Workbook_BeforeSave del objeto ThisWorkbook
Quedaría así:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   MsgBox ("Fichero guardado correctamente")
End Sub
Gracias por la respuesta, no obstante no tengo mucha experiencia en estas lides y tengo alguna duda con respecto a tu propuesta.
¿Tendría qué sustituir esa parte de la macro por tu propuesta?
No se demasiado de VBA, pero sino me equivoco lo que me has puesto sería como una macro por lo que entiendo que, pegar lo que me mandaste en un módulo nuevo y posteriormente hacer una llamada en mi código.
¿Podrías aclarmelo?
Gracias de nuevo
Abre el editor de visual basic (alt+f11) allí encontraras el objeto ThisWorkbook ( que no es otra cosa que la referencia al libro completo), se ubica en el listado al costado izquierdo del editor de visual basic. Dale doble click y pega el macro
luego en tu macro debes dejar sin efecto la linea en donde pusiste
MsgBox ("Fichero guardado correctamente")
no es necesario que lo borres solo ponlo con  este signo delante
' MsgBox ("Fichero guardado correctamente")
Así queda como comentario.
Ahora bien, cada vez que grabas el libro saldrá el mensaje. ( Entiendo que es eso lo que deseas)
Gracias por la aclaración lo probaré
Un vez que lo pruebes, favor de cerrar la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas