Skip to content
Blog – Aplica Excel Contable

Programar en Excel – Eventos de Hojas en VBA

diciembre 31, 2013

Programar en Excel - Eventos de Hojas en VBA

Comencemos con el articulo Programar en Excel - Eventos de Hojas en VBA:

Estamos con las Macros de Eventos y en el tema anterior ya hemos conocido los Eventos de Libros.

Y si todavía no has leído el tema anterior, por favor pulsa clic aquí y lee el tema anterior. Una vez termines de leer, regresa aquí y continua conociendo los Eventos de Hojas.

Hoy vamos a conocer los Eventos de Hojas, cuando hablamos de eventos, nos referimos a una acción especifica que se puede realizar sobre una Hoja.

Bien, ahora veamos cuales son los Eventos permitidos de una Hoja:

Programar en Excel - Eventos de Hojas

Los Eventos de Hojas permiten disparar automáticamente una Macro cuando suceden determinadas acciones a nivel de Hojas Excel, por ejemplo al activarla, desactivarla, calcularla, etc.

Instrucciones para insertar una Macro de Evento a Nivel Hoja:

  • check
    Las Macros de Eventos se deben escribir en la carpeta Hoja1 (Nombre) del Editor de Macros. Fíjate que Hoja1 identifica el número de Hoja de Excel y (Nombre) será el nombre que tenga asignado dicha Hoja en Excel. Por ejemplo, si en tu Excel la primera Hoja se llama "Gastos", en el Editor verías Hoja1 (Gastos). En nuestro caso tenemos Hoja1 (Hoja1), al hacer doble clic en dicha carpeta, la Macro que escribamos solo afectará a dicha Hoja.
Eventos de Hojas en VBA
  • check
    Luego en la primera lista desplegable de la ventana de Macros elegimos la opción Worksheet.
Eventos de Hojas en VBA
  • check
    Finalmente, en la lista desplegable de la derecha veremos todos los Eventos de Hoja que podemos utilizar para disparar nuestra Macro automáticamente.
Eventos de Hojas en VBA
  • check
    Por ejemplo, si haces clic en la opción "Activate", verás que en la ventana de Macros se escribe el siguiente código:

Private Sub Worksheet_Activate()

End Sub

Al seleccionar una Macro de Evento el editor escribe automáticamente la primera y última línea de su código (No debes modificar esto).

Luego podrás escribir tu Código Macro entre esas líneas. En este caso, la Macro que escribas se ejecutará cada vez que actives la Hoja Excel en cuestión.

Por ejemplo, puedes hacer una Macro que  muestre un mensaje de saludo cada vez que activas la Hoja:

Private Sub Worksheet_Activate()

Msgbox "Hola, Excel te saluda"

End Sub

Entonces, cada vez que actives la Hoja, la Macro se ejecutará automáticamente y verás el saludo:

Ejemplo de la Imagen

Eventos de Hojas

En el caso de las Macros de Evento, siempre aparece la palabra "Private". Eso significa que esa Macro no la podrás ver en la lista de macros de la pestaña "Desarrollador" => sección "Códigos" => Macros.

Esto es así porque la Macro no se puede ejecutar manualmente, si no que se ejecuta automáticamente cuando ocurre el evento, en este caso cuando se activa la Hoja Excel en cuestión.

Existen unas 9 Macros de Evento a Nivel Hoja, puedes insertarlas siguiendo las instrucciones dadas al comienzo.

Las Macros mas importantes son:

Private Sub Worksheet_Activate ()

' El código que escribas aquí se ejecutará automáticamente al activar la hoja

End Sub

Private Sub Worksheet_Calculate()

' El código que escribas aquí se ejecutará automáticamente al calcular la hoja

End Sub

Private Sub Worksheet_Deactivate()

' El código que escribas aquí se ejecutará automáticamente al desactivar la hoja

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

' El código que escribas aquí se ejecutará automáticamente al moverte entre las celdas de la hoja (cada vez que seleccionas y te posicionas en una nueva celda)

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

' El código que escribas aquí se ejecutará automáticamente al producirse un cambio en la hoja (por ejemplo al introducir un dato en una celda, seleccionar una opción de una lista desplegable, etc.)

End Sub

Hasta aqui con el tema de las Macros de Eventos de Hojas, para el próximo tema continuamos con los Eventos de Formularios.

Si te ha gustado el tema de hoy, te invito a que lo compartas con tus amigos de Facebook pulsando clic en el botón compartir:

Para Finalizar:

Me gustaría saber que piensas de este articulo "Programar en Excel - Eventos de Hojas en VBA".

Por lo tanto:

Déjame tu comentario con dudas, críticas constructivas y sugerencia en la sección de comentarios o bien en el Chat. Al mismo tiempo te invito a que visites nuestra pagina de Facebook, pulsando clic aquí.

Te saluda,

Roger Perez - Aplica Excel Contable

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies
>