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.
- Reuse Anything: Add the most used or complex formulas, charts and anything else to your favorites, and quickly reuse them in the future.
- More than 20 text features: Extract Number from Text String; Extract or Remove Part of Texts; Convert Numbers and Currencies to English Words.
- Merge Tools: Multiple Workbooks and Sheets into One; Merge Multiple Cells/Rows/Columns Without Losing Data; Merge Duplicate Rows and Sum.
- Split Tools: Split Data into Multiple Sheets Based on Value; One Workbook to Multiple Excel, PDF or CSV Files; One Column to Multiple Columns.
- Paste Skipping Hidden/Filtered Rows; Count And Sum by Background Color; Send Personalized Emails to Multiple Recipients in Bulk.
- Super Filter: Create advanced filter schemes and apply to any sheets; Sort by week, day, frequency and more; Filter by bold, formulas, comment...
- More than 300 powerful features; Works with Office 2007-2019 and 365; Supports all languages; Easy deploying in your enterprise or organization.
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.