Llamar macro con formula =SI(;)

Tengo una serie fórmulas donde al final tengo una condicional, si dicha condición se cumple mi valor será "1" si no se cumple sera "0". Requiero llamar mi macro "COPIAR" cuando el valor en la condicional con fórmula se cumpla, es decir si sale "1" en la condición que automáticamente se ejecute la macro "COPIAR".

2 respuestas

Respuesta
1

Para que una macro se ejecute en automático debe ocurrir un evento en la hoja o en el libro. En este caso el evento es en la hoja, en la hoja hay eventos como: modificar una celda (change) o seleccionar una celda (selection) o cuando se actualiza la hoja porque algún dato modificó una fórmula (calculate).

Si utilizamos el evento Calculate para revisar si la celda tiene el valor 1, cada que se modifique cualquier dato de la hoja el evento se activará y revisará la celda.

Por ejemplo, pon el siguiente evento en tu hoja:

Private Sub Worksheet_Calculate()
    If Range("C4") = 1 Then
        Call copiar
    End If
End Sub

Prueba con ese evento y me comentas.


Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

Sal u dos

¡Gracias!  La he probado y va de maravilla. Sólo le cambié la celda.

Ya pude completar toda la macro, en serio les agradezco infinitamente.

Respuesta
1

trata if valor=1 then copiar 

Trata

valor=celda con condicion

if valor=1 then copiar

Esto ejecutara la macro copiar cuando el valor sea igual a 1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas