How to make a shape blinking or flashing over and over in Excel?
If you want to make a shape blinking over and over in a worksheet, a method in this article can help you.
Recommended Excel Productivity Tools
In the worksheet, to make a shape blinking, please do as follows.
1. Press the Alt + F11 keys to open the Microsoft Visual Basic for Applications window.
2. In the Microsoft Visual Basic for Applications window, click Insert > Module. Then copy and paste VBA code into the Code window.
VBA code: Make a shape blinking over and over in worksheet
Dim NextTime As Date Dim xColor As Long Sub Flash() NextTime = Now + TimeValue("00:00:01") With ActiveSheet.Shapes("new").Fill.ForeColor If xColor = 0 Then xColor = .SchemeColor End If .SchemeColor = Int(Rnd() * 55 + 1) End With Application.OnTime NextTime, "Flash" End Sub Sub StopIt() Application.OnTime NextTime, "Flash", schedule:=False ActiveSheet.Shapes("new").Fill.ForeColor.SchemeColor = xColor xColor = 0 End Sub
1). in the code, new is the name of the shape you will make it blink. Please change it to your own.
2). 00:00:01 means that the shape will flash every second.
3. Press the Alt + Q keys together to exit the Microsoft Visual Basic for Applications window.
4. Insert a Button into the worksheet by clicking Developer > Insert > Button (Form Control) as below screenshot shown.
5. In the popping up Assign Macro dialog box, select Flash in the Macro name box, and then click the OK button.
6. Then change the display text on the button as you need. In this case, I change the display text to Start blinking as below screenshot shown.
7. Repeat the above step 4 and 5 to insert a new button and assign the StopIt macro to this button.
8. Change the display text of this new button.
Then you can see two buttons assigning with different macros are inserted into the worksheet. See screenshot:
From now on, when clicking on the Start blinking button, the shape starts blinking with different colors. If you want to stop the flash, please click the Stop blinking button.