Ejecute una macro cuando se inicie Excel - Ejemplos de código VBA

¿Necesita ejecutar una macro cuando se inicia Excel? Tienes dos opciones:

1. Cree un sub Workbook_Open () dentro de "ThisWorkbook".

2. Coloque un sub Auto_Open () dentro de cualquier módulo.

Evento Workbook_Open

Cree un subtítulo titulado "Workbook_Open" dentro de "ThisWorkbook"

123 Workbook_open ()MsgBox "¡Este código se ejecutó al inicio de Excel!"End Sub

Auto_Open

Usando el segundo método: simplemente cree una subrutina llamada Auto_Open y coloque el código en ella, o llame a otro sub desde allí. Automáticamente, su código se ejecuta cuando se inicia Excel.

123 Private Sub Auto_Open ()MsgBox "¡Este código se ejecutó al inicio de Excel!"End Sub

Cree y asigne un nombre a una nueva hoja de trabajo cada vez que se abra Excel

El siguiente código funciona abriendo un libro de trabajo. Agrega automáticamente una nueva hoja y la etiqueta con la fecha. También verifica que la hoja no exista ya, para permitir la posibilidad de que se abra más de una vez al día.

Este código hace uso del Evento abierto del libro de trabajo y debe colocarse en el módulo del libro de trabajo debajo del evento "Libro de trabajo abierto". La función Sheet_Exist debe colocarse en un módulo y esto verifica si la hoja existe o no:

123456789101112131415 Private Sub Workbook_Open ()Atenuar New_Sheet_Name como cadenaNew_Sheet_Name = Formato (Ahora (), "dd-mm-aa")Si Sheet_Exists (New_Sheet_Name) = False, entoncesCon libro de trabajoWorksheets.Add (). Name = New_Sheet_NameTerminar conTerminara siAhorrarEnd Sub
12345678910111213 Función Sheet_Exists (WorkSheet_Name como cadena) como booleanoAtenuar hoja de trabajo como hoja de trabajoSheet_Exists = FalsoPara cada hoja de trabajo de este libro de trabajo.Si Work_sheet.Name = WorkSheet_Name EntoncesSheet_Exists = VerdaderoTerminara sipróximoFunción final

Para descargar el archivo .XLSM para este tutorial, haga clic aquí

Establecer la hoja predeterminada cuando se abre el libro

¿Quiere asegurarse de que una hoja siempre se muestre primero cuando se abre un libro de trabajo? Por ejemplo, cuando abre un libro, sheet3 es siempre la hoja activa. Así es cómo.

Puede hacer referencia a una hoja de VBA por su nombre de programa (es decir, Sheet3) o por su nombre de pestaña (es decir, JanData). Es mejor usar el nombre del programa, porque si el nombre de la pestaña cambia, su código VBA que hace referencia a un nombre de pestaña ya no funcionará. Sin embargo, si usa el nombre del programa, un usuario puede cambiar el nombre de la pestaña varias veces y su macro seguirá funcionando.

Para asegurarse de que una determinada hoja siempre esté activada cuando se abre un libro de trabajo, simplemente coloque el código sheet.activate en el sub workbook_open. Este es un ejemplo que activa sheet3 usando el nombre del programa cada vez que se abre un libro.

123 Private Sub Workbook_Open ()Hoja3.ActivarEnd Sub

Y esto lo hace usando el nombre de la pestaña:

1234 Private Sub Workbook_Open ()Hojas de cálculo ("mytabname"). ActivarEnd Sub

Nota al margen: debe guardar y reiniciar Excel para que esto funcione.
Nota al margen: esto solo funciona si las macros están habilitadas.
Nota al margen: coloque este código en la ventana de código para el objeto ThisWorkbook en el VBE.

Cargar formulario cada vez que se abre el libro

Si desea cargar un formulario o ejecutar algún código VBA cuando abre un libro de Excel, coloque su código en la ventana de código de Thisworkbook y en el sub Workbook_Open.

De su hoja de cálculo:
1. Presione ALT y F11 para abrir el editor de VB
2. Haga doble clic en la palabra ThisWorkbook para abrir la ventana de código.
3. Escriba el siguiente código en la ventana de código de ThisWorkbook

123 Private Sub Workbook_Open ()UserForm1.ShowEnd Sub

Nota al margen: Reemplace Userform1 con el nombre de su formulario

4. Cierre Excel y vuelva a abrirlo.

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave