Ejecutar macros al abrir un archivo en Excel con el evento Workbook_Open
El evento Workbook_Open lo uso constantemente para ejecutar algunas macros al momento de abrir mis archivos o incluso lo uso cuando toca desarrollar un add-in.
En este mismo Blog, podrás ver que en muchos ejemplos uso este evento. Da click aquí para ver los artículos.
Ver video Haz que Excel te salude ejecutando macro al abrir el archivo
SUSCRÍBETE a nuestro canal para aprender más de Excel y macros.
Cómo lo hacemos
Usar el evento Workbook_Open realmente es tan sencillo, que pensarás que por que no habías usado antes.
- Abrimos el IDE de vba. La manera más sencilla es presionar Alt + F11.
- En la parte izquiera del IDE ubicamos el nombre del nuestro archivo y damos doble click sobre el objeto ThisWorkbook.
Figura 1. IDE de vba.
- Para activar el evento Workbook_Open nos posicionamos en la parte derecha y damos click sobre el Como que dice (General) y elegimos Workbook.
- Al dar click se añadirá el código necesario para para el evento.
Figura 2. Activando el evento Workbook_Ope en el IDE de vba.
El código que querramos que se ejecute irá entre las líneas Private Sub Workbook_Open() y End Sub.
Código vba de ejemplo
Para este artículo usaremos un ejemplo que mandará un mensaje dependiendo la hora en la que se abre el archivo, siendo Buenos días, tardes o noches.
Figura 3. Mensaje de bienvenida al abrir un archivo.
Usaremos el siguiente código vba para lograr lo anterior.
Private Sub Workbook_Open() Dim HoraActual As Date HoraActual = Time Select Case HoraActual Case "00:00" To "05:59:59" MsgBox "Buenas noches" Case "06:00" To "11:59:59" MsgBox "Buenos días" Case "12:00" To "18:59:59" MsgBox "Buenas tardes" Case "19:00" To "23:59:59" MsgBox "Buenas noches" End Select End Sub
Anexos
Artículos donde también usando el evento Workbook_Open:
- Ejecutar macro dependiendo del nombre de usuario de Excel
- Hora real en Excel con OnTime
- Prohibir el acceso a las macros de Excel con Alt + F11
- Crear categoría y descripción para funciones personalizadas UDF en Excel
- Macro para crear un log y saber cuántas veces se abre un archivo de Excel
- Add-in para manipulación de texto en Excel
- Mostrar hojas en Excel ingresando una contraseña
- Funciones personalizadas UDF en Excel disponibles en todos los archivos abiertos
- Mostrar mensaje de los que cumplen años el día de hoy en Excel
- Lanzar tu propio menú contextual al dar click derecho en las etiquetas de hojas de Excel
- Usar “No volver a mostrar este mensaje” modificando el Registro de Windows desde Excel