Botón ejecuta macros alternativamente en Excel

Necesito que en un botón que tengo creado en Excel cuando haga click en el mismo ejecute la macro "Macro1" y cuando vuelva a hacer click en ese mismo botón ejecute la macro "Macro2" y vuelta a empezar, es decir que si vuelvo ha hacer click vuelve a ejecutar la macro "Macro1" y si hago otra vez click ejecuta la "Macro2" y así indefinidamente.

En resumen, que cada vez que haga click en el botón que este ejecute las macros alternativamente de una en una pero solo una de ellas.

2 respuestas

Respuesta
3

Te muestro otra opción, con un Botón de Alternar.

Pon el siguiente código en Botón de Alternar (ToggleButton):
Private Sub ToggleButton1_Click()
  If ToggleButton1 = True Then
    Call Macro1
  Else
    Call Macro2
  End If
End Sub
'
Sub Macro1()
  MsgBox "Hola 1"
End Sub
'
Sub Macro2()
  MsgBox "Hola 2"
End Sub

[R ecuerda valorar las respuestas.

Tanto tu solución como la de Elsa funcionan perfectamente.

Muchísimas gracias!

Un saludo!!

.

[Encantado de ayudarte. Gra cias por comentar.

Respuesta
2

Necesitas tener además de las 2 macros una declaración de variable pública al inicio de algún módulo. En la imagen van todas las instrucciones. Deberás reemplazar las macros 1 y 2 por las tuyas.

También es posible analizar otras situaciones en lugar de utilizar una variable (cuál es la hoja activa, el valor de cierta celda ... algún criterio que identifique las 2 situaciones.) Pero eso requiere de más información ;)

Sdos y no olvides valorar la respuesta si resolvió tu consulta.

Elsa

https://www.youtube.com/c/ElsaMatilde 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas