Ejecutar macro según el valor de una celda

Me llamo Marc y estoy empezando con esto de las macros y necesitaría una pequeña ayudita. Os expongo mi problema:
Tengo un libro de Excel con dos hojas, y quiero hacer una macro que se ejecute cuando se cumpla una condición o una fórmula.
Por Ejemplo:
He hecho esta pequeña macro:
Sub macro1( )
ActiveSheet.Next.Activate
End Sub
Al pulsar Ejecutar Macro pasa a la siguiente hoja.
Pero necesito que se ejecute automáticamente si el usuario introduce un número determinado (por ejemplo 2) en la casilla A1 de la hoja1 y pulsa enter.
1

1 respuesta

Respuesta
1
Es bastante simple.
Desde Excel, tipea ALT+F11 para ir a Visual Basic (Herramientas\Macro\Editor de VisualBasic)
Ctrl+R, para ir al "explorador de Proyectos".
En el libro (Ej VBProject (Libro1)) que te interesa, haz "doble click" en "Hoja1".
El cursor se posicionará en la ventana de "Código" (F7).
Allí vuelca el siguiente código :
'***********
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$A$1" And Target.Value = 2 Then
MsgBox "Es un 2 en A1"
macro1
End If
End Sub
'***********
Vuelve a Excel y prueba diferentes valores en la celda A1 de la hoja 1 .
Cuando introduzcas un 2, se genera un mensaje. Y luego se ejecuta la "macro1"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas