Click Twice on a Macro Button

ricardo9316

New Member
Joined
Apr 17, 2014
Messages
22
Is it possible to have a button on a worksheet do different things on its first click to a second click?

For example, I currently have a button that unhides tabs in a worksheet and I would like the tabs to be hidden again if clicked twice, so like a toggle button? My code so far is as follows:


Sub UnhideSheets()


Sheets("Monique").Visible = True

End Sub



Please can anyone help, or would I need a second button to hide the rows again?

Many thanks for taking the time to read my post and any help/guidance would be most appreciated.
 

Gary McMaster

Well-known Member
Joined
Feb 8, 2009
Messages
1,977
Maybe this?

Code:
Sub UnhideSheets()

If Sheets("Monique").Visible = True Then
    Sheets("Monique").Visible = False
Else
    Sheets("Monique").Visible = True
End If

End Sub
 

Eric W

MrExcel MVP
Joined
Aug 18, 2015
Messages
8,965
A bit more succinct:

Sheets("Monique").Visible = Not Sheets("Monique"").Visible

If you want to get a little fancier, you can even change the caption on the button to say "Hide" or "Unhide"
 

Forum statistics

Threads
1,081,618
Messages
5,360,055
Members
400,565
Latest member
Tommy O

Some videos you may like

This Week's Hot Topics

  • VBA (Userform)
    Hi All, I just would like to know why my code isn't working. Here is my VBA code: [CODE=vba]Private Sub OKButton_Click() Dim i As Integer...
  • List box that changes fill color
    Hello, I have gone through so many pages trying to figure this out. I have a 2020 calendar that depending on the day needs to have a certain...
  • Remove duplicates and retain one. Cross-linked cases
    Hi all I ran out of google keywords to use and still couldn't find a reference how to achieve the results of a single count. It would be great if...
  • VBA Copy and Paste With Duplicates
    Hello All, I'm in need of some input. My VBA skills are sub-par at best. I've assembled this code from basic research and it works but is...
  • Macro
    is it possible for a macro to run if the active cell value is different to the value above it
  • IF DATE and TIME
    I currently use this to check if date has passed but i also need to set a time on it too. Is it possible? [CODE=vba]=IF(B:B>TODAY(),"Not...
Top