Consejo: Otros idiomas son traducidos por Google. Puedes visitar el English versión de este enlace.
Iniciar sesión
x
or
x
x
Suscríbete
x

or

¿Cómo ejecutar macro cuando el valor de la celda cambia en Excel?

Normalmente, en Excel, podemos presionar la tecla F5 o el botón Ejecutar para ejecutar el código VBA. Pero, ¿alguna vez ha intentado ejecutar el código de macro específico cuando cambia el valor de una celda? En este artículo, presentaré algunos trucos rápidos para lidiar con este trabajo en Excel.

Ejecute o llame a macro cuando un valor de celda específico cambie con el código de VBA

Ejecute o llame a macro cuando cualquier valor de celda cambie en un rango con código VBA


Elimine todas las macros de múltiples libros de trabajo:

Kutools for Excel's Lote Eliminar todas las macros la utilidad puede ayudarlo a eliminar todas las macros de múltiples libros de trabajo como lo necesite. ¡Descarga y prueba gratis Kutools for Excel ahora!

doc ejecuta macro si la celda cambia 3

Kutools for Excel: con más de 200 útiles complementos de Excel, de prueba sin límite en días 60. Descargar y prueba gratis ahora!


flecha azul burbuja derecha Ejecute o llame a macro cuando un valor de celda específico cambie con el código de VBA


Para ejecutar un código de macro cambiando el valor de una celda, el siguiente código de VBA puede hacerte un favor, haz lo siguiente:

1. Haga clic con el botón derecho en la pestaña de la hoja en la que desea ejecutar la macro si el valor de la celda cambia, y luego elija Ver código desde el menú contextual, y en el menú abierto Microsoft Visual Basic para aplicaciones ventana, copie y pegue el siguiente código en el Módulo en blanco:

Código de VBA: ejecuta macro cuando el valor de la celda cambia:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" Then
        Call Mymacro
    End If
End Sub

doc ejecuta macro si la celda cambia 1

Nota: En el código anterior, A1 es la celda específica en la que desea ejecutar el código, Mymacro es el nombre de macro que desea ejecutar. Por favor, cámbielos a su necesidad.

2. Y luego guarde y cierre la ventana de código; ahora, cuando ingresa o cambia el valor en la celda A1, el código específico se activará de inmediato.


flecha azul burbuja derecha Ejecute o llame a macro cuando cualquier valor de celda cambie en un rango con código VBA

Si desea ejecutar o desencadenar una macro cuando cualquier valor de celda cambia en un rango de celda, el siguiente código puede ayudarlo.

1. Haga clic con el botón derecho en la pestaña de la hoja en la que desea ejecutar la macro si el valor de la celda cambia, y luego elija Ver código desde el menú contextual, y en el menú abierto Microsoft Visual Basic para aplicaciones ventana, copie y pegue el siguiente código en el Módulo en blanco:

Código de VBA: ejecuta macro cuando cualquier valor de celda cambia en un rango:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:B100")) Is Nothing Then
Call Mymacro
End If
End Sub

doc ejecuta macro si la celda cambia 2

Nota: En el código anterior, A1: B100 son las celdas específicas en las que desea ejecutar el código, Mymacro es el nombre de macro que desea ejecutar. Por favor, cámbielos a su necesidad.

2. Y luego guarde y cierre la ventana de código, ahora, cuando ingresa o cambia el valor en cualquier celda de A1: B100, el código específico se ejecutará de inmediato.


Artículos relacionados:

¿Cómo ejecutar macro automáticamente antes de imprimir en Excel?

¿Cómo se ejecuta macro en función del valor de la celda en Excel?

¿Cómo se ejecuta la macro según el valor seleccionado de la lista desplegable en Excel?

¿Cómo ejecutar macro haciendo clic en hipervínculos en Excel?

¿Cómo ejecutar macro cuando se selecciona una hoja de un libro de trabajo?


Kutools for Excel: la mejor herramienta de productividad de Office aumenta su productividad en un 80%

  • Super Formula Bar (edite fácilmente varias líneas de texto y fórmula); Diseño de lectura (lee y edita fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas y mantener datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... Prevenir células duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Celdas múltiples sin cambiar la referencia de fórmula; Crear referencias automáticamente a múltiples hojas; Insertar viñetas, Casillas de verificación y más ...
  • Fórmulas favoritas e insertadas rápidamente, Gamas, cuadros y cuadros; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • Extracto del texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes / semana / día, frecuencia y más; Filtro especial por negrita, cursiva ...
  • Combinar libros de trabajo y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes xls, xlsx y PDF...
  • Más de potentes funciones de 300. Funciona con Office 2007-2019 y 365. Soporta todos los idiomas. Fácil despliegue en compañía. Funciones completas de prueba gratuita de 60-day.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilitar la edición y lectura con pestañas en Word, Excel, PowerPoint, Editor, Acceso, Visio y Proyecto.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta tu productividad en un 50% y reduce cientos de clics de ratón por ti todos los días!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    roberto · 9 months ago
    Hola buenas tardes
    quisiera saber el codigo para que se active una macro cuando cambia el valor de una celda de una columna, pero este valor cambia por formula,sin que el usuario introduzca ningun valor.
  • To post as a guest, your comment is unpublished.
    DrCartwright · 11 months ago
    The macro that you are calling where do you have this located? I have mine in the Modules folder but when I put any value in any cell of the worksheet I get a Compile error saying:
    Expected variable or procedure, not module.

    Please help.
    • To post as a guest, your comment is unpublished.
      skyyang · 11 months ago
      Hi, DrCartwright,
      Sorry for replying to you so late.
      Yes, as you said, the macro code should be located into the Module, and you need to change the code name to your own name as following screenshot shown:
  • To post as a guest, your comment is unpublished.
    Kevin · 1 years ago
    Hey, useful code. I was thinking if it was possible to insert a ring around the cells that are changed as they are changed? And reset the circles every Monday ?
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Kevin,
      Here is no idea for solving your problem, if you have any good solution, please comment here.
  • To post as a guest, your comment is unpublished.
    Tom · 1 years ago
    Worked great for me! My dilemma is that I want it to be a relative reference macro and there is a difference between hitting enter to save the entry and delete to clear the cell.
  • To post as a guest, your comment is unpublished.
    Andrew Cothliff · 1 years ago
    This worked first time for me using data validation list which displays text based on the list selection.
  • To post as a guest, your comment is unpublished.
    Jach · 2 years ago
    Yeah the description says it should trigger when value changes, but the second code says it's when the value is nothing, and the first one doesn't trigger when a value changes either, but if I press F5 when looking at the code, it wants to trigger MyMacro, but doesn't seem to react to value changes as much as going from nothing to something or opposite.
  • To post as a guest, your comment is unpublished.
    Wayne Hyde · 2 years ago
    This module is not working for me. It says when the VALUE of the cell changes it will execute the code. I find if I TYPE into the cell it works, but if the value of tthe cell is change by a formula, for example a Counta, then it does not execute. Do you have a solution to execute a macro when the VALUE changes through a formula?
    Thanks,
    Wayne