Ejercicios con el evento WorkSheet Calculate VBA

El evento VBA Worksheet_Calculate se activa cuando se vuelve a calcular una hoja de cálculo de Excel. Esto significa que el código asociado con este evento se ejecutará cada vez que Excel actualice el valor de una celda que contiene una fórmula basada en un cambio en la celda de referencia.

¿Para qué se utiliza?

El evento Worksheet_Calculate se utiliza principalmente para responder a cambios en los resultados de las fórmulas en las hojas de trabajo. A continuación se muestran algunos ejemplos de uso:

  • Actualice automáticamente un gráfico o tabla dinámica en función de los nuevos valores calculados.
  • Valide los resultados de la fórmula para garantizar la coherencia y evitar errores.
  • Realice acciones personalizadas basadas en valores calculados específicos.
  • Sincronice materiales con fuentes externas actualizadas frecuentemente.

¿Cómo se Utiliza?

Para utilizar el evento Worksheet_Calculate, primero debe crear un proceso en el editor VBA. Luego agregue este proceso a la hoja de trabajo donde desea activar el evento. Esto se puede hacer colocando el siguiente código en el módulo de hoja de cálculo:

Private Sub Worksheet_Calculate()

' Tu código aquí

End Sub

El código del procedimiento Worksheet_Calculate se ejecuta cada vez que se vuelve a calcular la hoja de trabajo.

Ejemplo:

El código muestra cómo utilizar el evento Worksheet_Calculate para actualizar el gráfico cada vez que se vuelve a calcular la hoja de cálculo:

Private Sub Worksheet_Calculate()

' Obtener el gráfico incrustado en la hoja (suponiendo que solo hay uno)
Set chartObj = ActiveSheet.ChartObjects(1)

' Si existe un gráfico, actualizarlo con los nuevos datos
If Not chartObj Is Nothing Then
    chartObj.Chart.Refresh
End If

End Sub

En este ejemplo, cada vez que se vuelve a calcular la hoja de cálculo, el código busca un gráfico anidado y lo actualiza con los nuevos valores calculados.

Conoce más eventos

Related Articles

Responses

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *