Excel.Tips.Net ExcelTips (Menu Interface)

Flashing Cells

Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Flashing Cells.

Many people use the conditional formatting features of Excel to draw attention to specific values or areas of their worksheets. For instance, a cell might be formatted so that its contents are displayed in red or in boldface if above or below a certain threshold.

What is missing, however, is a way to make the contents of a cell flash, or blink on and off. For such a feat, you are left to your own devices and the miracle of macros. By utilizing these tools, you can make cells blink by first designing a special style for the blinking cells, and then running a simple macro.

To create the special style, follow these steps:

  1. Select the cell that you want to flash on and off.
  2. Choose Style from the Format menu. Excel displays the Style dialog box. (See Figure 1.)
  3. Figure 1. The Style dialog box.

  4. In the Style Name box, enter a new style name. (For this example, use the style name Flashing.)
  5. Using the controls in the dialog box, modify any attributes for the style, as you desire.
  6. Click on OK.

You can now apply the style to any other cells you desire in your workbook. Now create the macros (there are two of them), as follows:

Dim NextTime As Date

Sub StartFlash()
    NextTime = Now + TimeValue("00:00:01")
    With ActiveWorkbook.Styles("Flashing").Font
        If .ColorIndex = xlAutomatic Then .ColorIndex = 3
        .ColorIndex = 5 - .ColorIndex
    End With
    Application.OnTime NextTime, "StartFlash"
End Sub

Sub StopFlash()
    Application.OnTime NextTime, "StartFlash", schedule:=False
    ActiveWorkbook.Styles("Flashing").Font.ColorIndex = xlAutomatic
End Sub

To start the items flashing, simply run StartFlash. The cells formatted with the Flashing style will alternate between red and white text approximately once a second. When you want to turn the flashing off, simply run the StopFlash macro.

There is one important thing to note about this macro: the variable NextTime is declared outside of the actual procedure in which it is used. This is done so that NextTime maintains its value from one invocation of StartFlash to the next.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2134) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Flashing Cells.

Related Tips:

Excel Smarts for Beginners! Featuring the friendly and trusted For Dummies style, this popular guide shows beginners how to get up and running with Excel while also helping more experienced users get comfortable with the newest features. Check out Excel 2013 For Dummies today!


Leave your own comment:

  Notify me about new comments ONLY FOR THIS TIP
Notify me about new comments ANYWHERE ON THIS SITE
Hide my email address
*What is 5+3 (To prevent automated submissions and spam.)
           Commenting Terms

Comments for this tip:

parvathi nair    27 May 2016, 04:45
Excellent.i have done it
Zack    03 May 2016, 22:16
Can I change the interior color instead font color? How do I do that?
Zak    28 Sep 2015, 15:21
Can someone create a youtube video with each steps to create a flashing cell. Not experienced in excel
Kadr Leyn    04 Aug 2015, 14:58
I made a template about flashing cell.


Barry    31 Jul 2015, 05:54

I have a spreadsheet that does exactly this.

I use a very simple macro that toggles the value of a "Name" once per second. Then I use conditional formatting to either highlight the target cell or not dependent on the value in the Name.
NB a Name doesn't have to refer to a Named range which it is most commonly used for but can hold variables, or even formulas.

In a code "Module":

Public HighlightTime As Date

Sub RefreshHighlight()
            If ThisWorkbook.Names("Flash") = "=1" Then
                ThisWorkbook.Names("Flash").Value = "=0"
                ThisWorkbook.Names("Flash").Value = "=1"
            End If
            HighlightTime = Now + TimeValue("00:00:01") 'SetTime for +1 secs
            Application.OnTime HighlightTime, "RefreshHighLight"
End Sub

and on the "ThisWorkbook" codepage:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.OnTime HighlightTime, "RefreshHighLight", , False
End Sub

Private Sub Workbook_Open()
    ThisWorkbook.Names.Add "Flash","0"
End Sub

Then in any cell you want to flash use the conditional formatting forumla: "=Flash=1" and whatever formatting you desire.

NOTE: the placement of the macro on the specified codepages/modules it important.
      and the use of these macros clears the "Undo" stack.
Paul    30 Jul 2015, 08:38
Is it possible to highlight a cell say in yellow and just have the highlighted colour flash on and off. The contents i.e. text or numbers of the cell should stay the same.
Allen    18 May 2015, 19:45
Very handy! I use it inside a stopwatch macro for tracking billable hours while I work.

Instead of changing font colour, though, it may be easier just to toggle bold:

With ActiveWorkbook.Styles("Flashing").Font
    .Bold = Not .Bold
End With
Glenda D    20 Jan 2015, 14:16
Just a tip for others, DON'T use black as the base color. The macro is subtacting to get the alternate color. And BLACK is 1.

Styles format menu is accessed from HOME ribbon, Styles box, Cell Styles drop down.
BHAVESH    17 Dec 2014, 07:04
This is bhavesh form ahmedabad, India. I had trying this above mentioned code but it given error.

please give me idea

awyatt    05 Nov 2014, 09:49

This page is for users of older versions of Excel, as noted at both the beginning and end of the tip. Also in those places (beginning and end) is a link to a tip for later versions of Excel, including yours.

Roger    05 Nov 2014, 09:34
Hello, I'm using Excel 2010 but I cannot find the Format menu that you mention. I do have a Format Cells menu but that does not have a tab for Styles. Can you please advise.

Thank you
Tim    30 Aug 2014, 23:59
Can you show us how to associate new style "Flashing" to the new created macro using VB?
vinit kumar jha    15 Jul 2014, 08:29

I am vinit and wanted to use Flash option in a cell...already created module as per above mentioned VB code...

but getting " Run time error 9)

Script out of range..

        .ColorIndex = 5 - .ColorIndex
John Morgan    17 Oct 2013, 11:20
I am trying to use the Flashing Cells Tip.
It is giving me a compilation error
"unable to set the ColorIndex property of the Font class".
The debugger highlights the code
".ColorIndex = 5 - .ColorIndex"

I am using 2002 Excel.
Can you help me please.

Asif Kamal    17 Sep 2013, 06:34
Excellent one...great
Dave    05 Jul 2013, 07:57
Is it possible to make the cell flash if the date is reaching close to 30 days. I want to be notified that a client has not called within the 30 days period so that when it starts to flash I can call them.
Barry Fitzpatrick    01 Jun 2013, 06:21
It is some times easier for Users simply to have the macro toggle a cell value between TRUE and FALSE and use conditional formatting to flash whatever formatting the user desires without the need to delve into the macro itself and the to have knowledge of properties of the of cells and restrictions on the value they can be set to.

Our Company

Sharon Parq Associates, Inc.

About Tips.Net

Contact Us


Advertise with Us

Our Privacy Policy

Our Sites


Beauty and Style




DriveTips (Google Drive)

ExcelTips (Excel 97–2003)

ExcelTips (Excel 2007–2016)



Home Improvement

Money and Finances


Pests and Bugs

Pets and Animals

WindowsTips (Microsoft Windows)

WordTips (Word 97–2003)

WordTips (Word 2007–2016)

Our Products

Helpful E-books

Newsletter Archives


Excel Products

Word Products

Our Authors

Author Index

Write for Tips.Net

Copyright © 2016 Sharon Parq Associates, Inc.