If formula in excel with dates

The IF function is one of the most useful Excel functions. It is used to test a condition and return one value if the condition is TRUE and another if it is FALSE.

One of the most common applications of the IF function involves the comparison of values.

These values can be numbers, text, or even dates. However, using the IF statement with date values is not as intuitive as it may seem.

In this tutorial, I will demonstrate some ways in which you can use the IF function with date values.

Syntax and Usage of the IF Function in Excel

The syntax for the IF function is as follows:

IF(logical_test, [value_if_true], [value_if_false])

Here,

  • logical_test is the condition or criteria that you want the IF function to test. The result of this parameter is either TRUE or FALSE
  • value_if_true is the value that you want the IF function to return if the logical_test evaluates to TRUE
  • value_if_false is the value that you want the IF function to return if the logical_test evaluates to FALSE

For example, say you want to write a statement that will return the value “yes” if the value in cell reference A2 is equal to 10, and “no” if it’s anything but 10.

You can then use the following IF function for this scenario:

=IF(A2=10,"yes","no")
A Simple IF formula

Comparing Dates in Excel (Using Operators)

Unlike numbers and strings, comparison operators, when used with dates, have a slightly different meaning.

Here are some of the comparison operators that you can use when comparing dates, along with what they mean:

Operator What it Means When Using with Dates
< Before the given date
= Same as the date with which we are comparing
> After the given date
<= Same as or before the given date
>= Same as or after the given date

It may look like IF formulas for dates are the same as IF functions for numeric or text values, since they use the same comparison operators.

However, it’s not as simple as that.

Unfortunately, unlike other Excel functions, the IF function cannot recognize dates.

It interprets them as regular text values.

So you cannot use a logical test such as “>05/07/2021” in your IF function, as it will simply see the value “05/07/2021” as text.

Here are a few ways in which you can incorporate date values into your IF function’s logical_test parameter.

Using the IF Function with DATEVALUE Function

If you want to use a date in your IF function’s logical test, you can wrap the date in the DATEVALUE function.

This function converts a date in text format to a serial number that Excel can recognize as a date.

If you put a date within quotes, it is essentially a text or string value.

When you pass this as a parameter to the DATEVALUE function, it takes a look at the text inside the double quotes, identifies it as a date and then converts it to an actual Excel date value.

Let us say you have a date in cell A2, and you want cell B2 to display the value “done” if the date comes before or on the same date as “05/07/2021” and display “not done” otherwise.

You can use the IF function along with DATEVALUE in cell B2 as follows:

=IF(A2<DATEVALUE("05/07/2021"),"done","not done")

Here’s a screenshot to illustrate the effect of the above formula:

IF Formula to check done or not

Using the IF Function with the TODAY Function

If you want to compare a date with the current date, you can use the IF function with the TODAY function in the logical test.

Let’s say you have a date in cell A2 and you want cell B2 to display the value “done” if it is a date before today’s date.

If not, you want let’s say you want to display the value “not done”. You can use the IF function along with the TODAY function in cell B2 as follows:

=IF(A2<TODAY(),"done","not done")

Here’s a screenshot to illustrate the effect of the above formula (assuming the current date is 05/08/2021):

IF Formula to check whether date is before today

Using the IF Function with Future or Past Dates

An interesting thing about dates in Excel is that you can perform addition and subtraction operations with them too.

This is because dates are basically stored in Excel as serial numbers, starting from the date Jan 1, 1900.

Each day after that is represented by one whole number.

So, the serial number 2 corresponds to Jan 2, 1900, and so on.

This means that adding n number of days to a date is equivalent to adding the value n to the serial number that the date represents.

If TODAY() is 05/07/2021, then TODAY()+5 is five days after today, or 05/12/2021. Similarly, TODAY()-3 is three days before today or 05/04/2021.

Let’s say you have a date in cell A2 and you want cell B2 to mark it as “within range” if it is within 15 days from the current date.

If not, you want to show “out of range”. You can use the IF function along with the TODAY function in cell B2 as follows:

=IF(A2<TODAY()+15,"within range","out of range")

Here’s a screenshot to illustrate the effect of the above formula (assuming the current date is 05/08/2021):

IF formula to check whether date is within range

Points to Remember

Having discussed different ways to use dates with the IF function, here are some important points to remember:

  1. Instead of hardcoding the dates into the IF function’s logical test parameter, you can store the date in a separate cell and refer to it with a cell reference. For example, instead of typing =IF(A2<”05/07/2021”,”done”,”not done”), you can store the date 05/07/2021 in a cell, say B2 and type the formula: =IF(A2<B2,”done”,”not done”).

IF formula to compare two dates

  1. Alternatively, you can use the DATEVALUE function as explained in the first part of this tutorial.

Using IF function with Datevalue

  1. Another neat technique that you can use is to simply add a zero to the date (which has been enclosed in double quotes). So you can type: =IF(A2<”05/07/2021”+0,”done”,”not done”). This will make Excel take the date inside double quotes as a serial number, and use it in the logical test without having its value changed.

Adding 0 to date within IF formula

In this tutorial, I showed you some great techniques to use the IF function with dates. I hope the tips covered here were useful for you.

Other articles you may also like:

  • Multiple If Statements in Excel (Nested Ifs, AND/OR) with Examples
  • How to use Excel If Statement with Multiple Conditions Range [AND/OR]
  • How to Convert Month Number to Month Name in Excel
  • Why are Dates Shown as Hashtags in Excel? Easy Fix!
  • How to Convert Serial Numbers to Date in Excel
  • How to Get the First Day Of The Month In Excel?

Skip to content

3 примера, как функция ЕСЛИ работает с датами.

На первый взгляд может показаться, что функцию ЕСЛИ для работы с датами можно применять так же, как для числовых и текстовых значений, которые мы только что обсудили. К сожалению, это не так.

Примеры работы функции ЕСЛИ с датами.

Дата в качестве условия, с которым работает функция ЕСЛИ, может быть записана в какую-то ячейку Excel, либо же прямо вставлена в формулу. Вот тут-то и возникают некоторые особенности и сложности работы функции ЕСЛИ с датами.

Пример 1. Формула условия для дат с
функцией ДАТАЗНАЧ (DATEVALUE)

Иногда случается, что записать дату непосредственно в функцию ЕСЛИ, не ссылаясь ни на какую ячейку. В этом случае возникают некоторые сложности.

В отличие от многих
других функций Excel, ЕСЛИ не может распознавать даты и интерпретирует их как текст,
как простые текстовые строки.

Поэтому вы не можете выразить свое логическое условие просто как  >«15.07.2019» или же >15.07.2019. Увы, ни один из приведенных вариантов не верен.

Чтобы функция ЕСЛИ распознала дату в вашем логическом условии именно как дату, вы должны обернуть ее в функцию ДАТАЗНАЧ (в английском варианте – DATEVALUE).

Например, ДАТАЗНАЧ(«15.07.2019»).

Полная формула ЕСЛИ может
иметь следующую форму:

=ЕСЛИ(B2<ДАТАЗНАЧ(«10.09.2019″),»Поступил»,»Ожидается»)

Как показано на скриншоте,
эта формула ЕСЛИ оценивает даты в столбце В и возвращает «Послупил», если дата
поступления до 10 сентября. В противном случае формула возвращает «Ожидается».

Пример 2. Формула условия для дат с
функцией СЕГОДНЯ()

В случае, когда даты записаны в ячейки таблицы Excel, применять ДАТАЗНАЧ нет необходимости.

Если вы основываете свое условие на текущей дате, то можете взять функцию СЕГОДНЯ (в английском варианте — TODAY) в качестве аргумента функции ЕСЛИ.

К примеру, сегодня — 9 сентября 2019 года.

В столбце C отметим товар, который уже поступил. В ячейке C2 запишем:

=ЕСЛИ(B2<СЕГОДНЯ(),»Поступил»,»»)

В столбце D отметим товар, который еще не поступил. В ячейке D2 запишем:

=ЕСЛИ(B2<СЕГОДНЯ(),»»,»Ожидается»)

Пример 3. Расширенные
формулы ЕСЛИ для будущих и прошлых дат

Предположим, вы хотите
отметить только те даты, которые отстоят от текущей более чем на 30 дней.

Выделим даты, отстоящие более чем на месяц от текущей, в прошлом. Укажем для них «Более месяца назад». Запишем это условие:

=ЕСЛИ(СЕГОДНЯ()-B2>30,»Более
месяца назад»,»»)

Если условие не выполнено, то в ячейку запишем пустую строку «».

А для будущих дат, также отстоящих более чем на месяц, укажем «Ожидается».

=ЕСЛИ(B2-СЕГОДНЯ()>30,»Ожидается»,»»)

Если все результаты попробовать объединить в одном столбце, то придется составить выражение с несколькими вложенными функциями ЕСЛИ:

=ЕСЛИ(СЕГОДНЯ()-B2>30,»Более месяца назад», ЕСЛИ(B2-СЕГОДНЯ()>30,»Ожидается»,»»))

ЕСЛИ с датами

Примеры работы функции ЕСЛИ:

Return to Excel Formulas List

Download Example Workbook

Download the example workbook

This tutorial will demonstrate how to use the IF Function with Dates in Excel and Google Sheets.

if dates main

IF & DATE Functions

To use dates within IF Functions, you can use the DATE Function to define a date:

=IF(B3 > DATE(2020,1,1),"Delay","Ontime")

IF

One example of this formula is to calculate if a payment is over due:

Payment Over Due

=IF(D3>=(B3+C3),"OVERDUE","ONTIME")

Payment Overdue

If Function with Dates – Google Sheets

All of the above examples work exactly the same in Google Sheets as in Excel.

IF Dates Google

Explanation 

In this example, the goal is to check if a given date is between two other dates, labeled «Start» and «End» in the example shown. For convenience, both start (E5) and end (E8) are named ranges. If you prefer not to use named ranges, make sure you use absolute references for E5 and E8.

Excel dates

Excel dates are just large serial numbers and can be used in any numeric calculation or comparison. This means we can simply compare a date to another date with a logical operator like greater than or equal (>=) or less than or equal (<=).

AND function

The main task in this example is to construct the right logical test. The first comparison is against the start date. We want to check if the date in B5 is greater than or equal (>=) to the date in cell E5, which is the named range start:

=B5>=start

The second expression needs to check if the date in B5 is less than or equal (<=) to the end date in cell E5:

=B5<=end

The goal is to check both of these conditions are TRUE at once, and for that, we use the AND function:

=AND(B5>=start,B5<=end) // returns TRUE or FALSE

The AND function will return TRUE when the date in B5 is greater than or equal to start AND less than equal to end. If either test fails, the AND function will return FALSE. We now have the logic we need to use with the IF function.

IF function

We start off by placing the expression above inside the IF function as the logical_test argument:

=IF(AND(B5>=start,B5<=end)

Next, we add a value_if_true argument. In this case, we  want to return an «x» when a date is between two dates, so we add «x» as a text value:

=IF(AND(B5>=start,B5<=end),"x"

If the date in B5 is not between start and end, we don’t want to display anything, so we use an empty string («») for value_if_false. The final formula in C5 is:

=IF(AND(B5>=start,B5<=end),"x","")

As the formula is copied down, the formula returns «x» if the date in column B is between the start and end date. If not, the formula returns an empty string («»), which looks like an empty cell in Excel. The values returned by the IF function can be customized as desired.

Updated 12/16/22: Stay up to date on the latest from Excel and download Excel templates today.

Date functions in Microsoft Excel make it possible to perform date calculations, like addition or subtraction, resulting in automated or semi-automated worksheets. The NOW function, which calculates values based on the current date and time, is a great example of this.

Taking this functionality a step further, when you mix date functions with conditional formatting, you can create spreadsheets that display date alerts automatically when a deadline is near or differentiates between types of days, like weekends and weekdays.

Security practitioner or information worker working from home office.

Get a better picture of your data.

The basics of conditional formatting for dates

To find conditional formatting for dates, go to:

Home > Conditional Formatting > Highlight Cell Rules > A Date Occurring.

Visual example of selecting Conditional Formatting, hovering over Highlight Cells Rules, and selecting A Date Occurring.

You can select the following date options, ranging from yesterday to next month:

Select from a range of dates, including yesterday, today, tomorrow, in the last 7 days, last week, and this week.

These 10 date options generate rules based on the current date. If you need to create rules for other dates (e.g., greater than a month from the current date), you can create your own new rule.

Below are step-by-step instructions for a few of my favorite conditional formats for dates.

Highlighting weekends

When you design an automated calendar you don’t need to color the weekends yourself. With the conditional formatting tool, you can automatically change the colors of weekends by basing the format on the WEEKDAY function. Assume that you have the date table—a calendar without conditional formatting:

Highlighting weekends in Microsoft Excel example.

To change the color of the weekends, open the menu Conditional Formatting > New Rule.

Setting New Rule under Conditional Formatting.

In the next dialog box, select the menu Use a formula to determine which cell to format.

New Formatting Rule popup block. Select Use a formula to determine which cells to format and edit the Rule Description.

In the text box Format values where this formula is true, enter the following WEEKDAY formula to determine whether the cell is a Saturday (6) or Sunday (7):

=WEEKDAY(B$5,2)>5

Parameter 2 means Saturday = 6 and Sunday = 7. This parameter is very useful to test for weekends.

Parameter added to section "Format values where this formula is true."

Note: In this case, you must lock the reference of the row so that the conditional format will work correctly in the other cells in this table.

Then, customize the format of your condition by clicking on the Format button and you choose a fill color (orange in this example).

Customize the format of your condition by clicking on the Format button.

format numbers as dates <br>or times in Excel

Learn more 

Click OK, then open Conditional Formatting> Manage Rules.

How to select Manage Rules under Conditional Formatting in Microsoft Excel.

Select This Worksheet to see the worksheet rules instead of the default selection. In Applies to, change the range that corresponds to your initial selection when creating your rules to extend it to the whole column.

Select This Worksheet to see the worksheet rules.

Now you will see a different color for the weekends. Note: This example shows the result in the Excel Web App.

Highlighting holidays

To enrich the previous workbook, you could also color-code holidays. To do that, you need a column with the holidays you’d like to highlight in your workbook (but not necessarily in the same sheet). In our example, we have US public holidays in column AH (as related to the year in cell B2).

United States holidays in 2023 formatted in Excel.

Again, open the menu Conditional Formatting > New Rule. In this case, we use the formula COUNTIF in order to count if the number of public holidays in the current month is greater than 1.

=COUNTIF($AH$4:$AH$16,B$5)>1

Then, in the dialog box Manage Rules, select the range B4:AF11. If you want to highlight the holidays over the weekends, you move the public holiday rule to the top of the list.

Move public holiday rule to the top of the list.

This example in the Excel Web App shows the result. Change the value of the month and the year to see how the calendar has a different format.

Highlighting delays

In case we want to change the color of cells based on our approach on a date again, we will use conditional formatting to make it work for us.

In the following example, we show:

  • Yellow dates between 1 and 2 months.
  • Orange dates between 2 and 3 months.
  • Purple dates more than 3 months.

We then construct three rules of conditional formatting using the formula DATEDIF. Respectively for the three cases the following formulas:

=DATEDIF($B2,$E$2,”m”)>0

=DATEDIF($B2,$E$2,”m”)>1

=DATEDIF($B2,$E$2,”m”)>2

Construct three rules of conditional formatting using the formula DATEDIF.

In the Excel Web App, try changing some dates to experiment with the result.

Employees talking in a hallway.

Task management in Microsoft 365

Collaborate on shared Office documents, including Excel, Word, and PowerPoint.

Color scales

Rather than choose a different color set for each period in our timeframe, we will work with the option of color scales to color our cells.

First, go into a new column (column E) and calculate the difference in the number of days in a year again with the DATEDIF formula and the parameter “yd”.

=DATEDIF($D2,TODAY(),”yd”)

Then choose the menu Conditional Formatting> New Rule option Format all cells based on their value and choose the following options:

  • Scale = 3 colors
  • Minimum = 0 Green
  • Midpoint = 10 White
  • Maximum = 30 Blue

New Rule formatting all cells based on their values. Color gradient indicates cell values.

The result is a gradient color scale with nuances from green to white and through blue. The closer to 0 the more green, the closer to 10 the more white, and the closer to 30 the more blue. In the Excel app, try changing some dates to experiment with the result.

Learn more

Explore Microsoft Excel today.

Additional resources:

  • Read more about the DATE function.
  • Read how to format numbers as dates and times.

Понравилась статья? Поделить с друзьями:
  • If formula in excel with date
  • If and only if symbol word
  • If formula in excel for a range of
  • If and not condition in excel
  • If formula for excel sheet