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: Conditionally Formatting for Multiple Date Comparisons.

Conditionally Formatting for Multiple Date Comparisons

by Allen Wyatt
(last updated January 11, 2018)


Bev is having a problem setting up a conditional format for some cells. What she wants to do is to format the cells so that if they contain a date before today, they will use a bold red font; if they contain a date after today, they will use a bold green font. Bev cannot get both conditions to work properly.

What is probably happening here is a frustrating artifact of the way that Excel parses the conditions you enter. Follow these steps to see what I mean:

  1. Select the range of dates to which you want the conditional format applied.
  2. Choose Conditional Formatting from the Format menu. Excel displays the Conditional Formatting dialog box.
  3. Change the second drop-down list from "between" to "less than."
  4. In the third control enter TODAY().
  5. Click Format, change the formatting for the font to bold red, then close the Format Cells dialog box.
  6. Click Add. Excel adds a second condition to the dialog box.
  7. Change the second drop-down list for Condition 2 from "between" to "greater than."
  8. In the third control for Condition 2 enter TODAY().
  9. Click Format, change the formatting for the font to bold green, then close the Format Cells dialog box.
  10. Click OK.

Regardless of your version, at this point there is a very good chance that all the dates in the range are formatted as bold red, even if they are a date after today. This is obviously wrong, and it occurs because of how Excel treats what you entered in the Conditional Formatting or New Formatting Rule dialog boxes.

Display the Conditional Formatting dialog box again (the same cells you started with should still be selected) and examine what you see. Notice that Excel changed what you entered into the third control for each condition. Instead of appearing as TODAY(), it appears as ="TODAY()". Excel added quotes to what you entered, treating the function name as a string, rather than the actual value for today. Remove the quote marks, but keep the equal sign, then click on OK. The formatting should now be proper; any dates prior to today will be bold red and any after today will be bold green. If the date is today's date, then it will not be formatted in any particular manner.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2780) 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: Conditionally Formatting for Multiple Date Comparisons.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...


Changing How Arrows Look

If you use Excel's graphic capabilities to insert a line or an arrow into a worksheet, you can change how that arrow ...

Discover More

Saving a Document as a Web Page

Want to save your document as a Web page? It's easy to do in Word; almost as easy as saving your document normally.

Discover More

Selecting the First Cell In a Row

When creating macros, you'll often have a need to select different cells in the worksheet. Here's how to select the first ...

Discover More

Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!

More ExcelTips (menu)

Diagonal Borders in a Conditional Format

Conditional formatting is a great tool for changing how your data looks based on the data itself. Excel won't allow you ...

Discover More

Using Multiple Test Conditions

When creating conditional formats, you are not limited to only one condition. You can create up to three conditions, all ...

Discover More

Conditional Formatting with Data Imported from Access

If you want to apply a conditional format to data imported into Excel from Access, you may run into some difficulties ...

Discover More

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.


If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is one more than 9?

2018-05-31 08:13:01

Ruthie A. Ward

Hi Rose. Try the WEEKDAY function on its own or combined with IsOdd or IsEven. My examples assumes your date box is cell A1.

true only for 2 Mon, 4 Wed, or 6 Fri
long version
shorter version

To highlight the other weekdays, you can use:

true only for 1 Sun, 3 Tue, 5 Thu, 7 Sat
long version
shorter version

2018-01-25 08:13:39


I use excel as a task worksheet that I print each workday. I have some tasks that occur Monday, Wednesday, Friday only. Is there a way to conditionally format those cells to appear only on those days? I figure I could use black font color and gray for the days those tasks aren't due IF I can figure out how to change that! My date box fills automatically with the date. Can I link the cells I want conditionally formatted with the date box?

2015-12-04 10:33:39

Michael (Micky) Avidan

@Darren Saliva,
Pls find a File Hosting Site and upload your file and come back to present, us, the direct link for downloading your file.
Michael (Micky) Avidan
“Microsoft® Answers" - Wiki author & Forums Moderator
“Microsoft®” MVP – Excel (2009-2016)

2015-12-04 10:18:22

Michael (Micky) Avidan

@To whom it may concern,
In such a case (TWO conditions) I, usually, do this:
I format the whole(!) range, of dates, with bold red font and from there all I need is to Conditional Format only the bold green font.
Michael (Micky) Avidan
“Microsoft® Answers" - Wiki author & Forums Moderator
“Microsoft®” MVP – Excel (2009-2016)

2015-12-03 13:11:43

Darren Saliva

Hi, I have a problem where I have a column with different expiration dates on it and I want to the color to change for closer I get to the date. for example:
90 days from the date in cell: green
30 days from the date in cell: yellow
past the date in the cell: red

my conditional format picks the color of the most recent condition that I created no matter the date. how do I go about do this?

2015-10-28 06:58:21

Frank M


Just wanted to thank you for your free tips. They really helped me solve the issue. You do a great job a stating them clear and to the point in a well structured manner. All what one wants !! Keep up the good work....

This Site

Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.

Newest Tips

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.