Как я могу запустить макрос одним щелчком мыши и запустить еще один щелчком по той же кнопке? - PullRequest
0 голосов
/ 27 октября 2018

У меня есть 2 макроса, один для показа изображения и другой, чтобы скрыть или удалить это изображение.Мне просто нужно показать это изображение, когда я нажимаю на кнопку, но когда я нажимаю второй раз, скрыть это изображение снова.

Ответы [ 2 ]

0 голосов
/ 28 октября 2018

В случае, если вы хотите переключаться между 2 макросами с помощью одной и той же командной кнопки, ниже может использоваться в качестве справки

Dim btnRun As Shape 'Declaring the command button variable
Sub Initializevariables()
Set btnRun = Worksheets("Sheet1").Shapes("Button 1") 'Initiailizing the variable
End Sub
' Ensure that you have assigned Macro 1 to the command button
Sub Macro1()
Call Initializevariables
MsgBox "Macro 1 ran"
btnRun.OnAction = "Module1.Macro2"
End Sub

Sub Macro2()
Call Initializevariables
MsgBox "Macro 2 ran"
btnRun.OnAction = "Module1.Macro1"
End Sub
0 голосов
/ 27 октября 2018

Вы можете использовать тот же макрос для обеих функций :

Sub ShowAndHide()
    Dim s As Shape
    Set s = ActiveSheet.Shapes("Rectangle 1")
    s.Visible = Not s.Visible
End Sub

Если макрос выполняется, а Shape не отображается, он становитсявидимый.При следующем запуске макроса он вернет Shape к скрытому.Повторные клики приведут к показать / скрыть / показать / скрыть / показать ...........

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...