## Summary

This step-by-step article describes how to use the built-in date and time functions in Microsoft Excel to perform complex date and time calculations.

Excel stores all dates as integers and all times as decimal fractions. With this system, Excel can add, subtract, or compare dates and times just like any other numbers, and all dates are manipulated by using this system.

In this system, the serial number 1 represents 1/1/1900 12:00:00 a.m. Times are stored as decimal numbers between .0 and .99999, where .0 is 00:00:00 and .99999 is 23:59:59. The date integers and time decimal fractions can be combined to create numbers that have a decimal and an integer portion. For example, the number 32331.06 represents the date and time 7/7/1988 1:26:24 a.m.

To help you perform complex date and time calculations, Excel includes many built-in date and time functions.

For example, if you sort a series of dates that are displayed in the mmmm date format (so that only the month is displayed), the months are not sorted alphabetically. Instead, the dates are sorted based on their underlying date serial number.

For example, when you use the NOW function to compare a date with the current date, as in the formula

ates in a formula, and you do not have to have the time included in the result, you can work around this behavior by using the TODAY function instead:

Note If you copy and paste these formulas, make sure that there are no line breaks or the formulas will not work.

4. In cell D1, type the following formula:

For example, to increase a date by one month, the formula is:

In the following example, if cells C2 and D2 contain the formula =B2-A2, and cell C2 is formatted in the General format, the cell displays a decimal number (in this case, 0.53125, the serial number representation of 12 hours and 45 minutes).

If midnight falls between your start time and end time, you must account for the 24-hour time difference. You can do this by adding the number 1, which represents one 24-hour period. For example, you might set up the following table, which allows for time spans beyond midnight.

To set up this table, type the following formula in cells C2 and D2:

For example, if cell A1 contains a time of "4:30" to represent four hours and 30 minutes, the formula is:

If the cell contains both a date and a time, use the following formula:

If you transfer files from Excel for Mac to Excel for Windows, this difference in the date systems should not cause a problem, because the date system is stored in each file. However, if you copy and paste between files with different date systems that originated on different platforms, dates may be displayed four years and one day away from their correct date.

To change to the 1904 date system in Excel for Windows, follow these steps:

Excel stores all dates as integers and all times as decimal fractions. With this system, Excel can add, subtract, or compare dates and times just like any other numbers, and all dates are manipulated by using this system.

In this system, the serial number 1 represents 1/1/1900 12:00:00 a.m. Times are stored as decimal numbers between .0 and .99999, where .0 is 00:00:00 and .99999 is 23:59:59. The date integers and time decimal fractions can be combined to create numbers that have a decimal and an integer portion. For example, the number 32331.06 represents the date and time 7/7/1988 1:26:24 a.m.

To help you perform complex date and time calculations, Excel includes many built-in date and time functions.

### The TODAY() Function and the NOW() Function

The TODAY function returns the serial number of today's date based on your system clock and does not include the time. The NOW function returns the serial number of today's date and includes the time.#### How Dates Are Sorted Based on Serial Number

In Excel, dates are sorted based on the serial number of the date, instead of on the displayed number. Therefore, when you sort dates in Excel, you may not receive the results you expect.For example, if you sort a series of dates that are displayed in the mmmm date format (so that only the month is displayed), the months are not sorted alphabetically. Instead, the dates are sorted based on their underlying date serial number.

#### How Dates Are Compared Based on Serial Number

Because serial numbers are also used in date and time comparisons, actual results may be different than what you expect (based on the displayed values).For example, when you use the NOW function to compare a date with the current date, as in the formula

the formula returns FALSE, even if the current date is 10/1/92; it returns TRUE only when the date is 10/1/92 12:00:00 a.m. If you are comparing two

=IF(NOW()=DATEVALUE("10/1/92"),TRUE,FALSE)

ates in a formula, and you do not have to have the time included in the result, you can work around this behavior by using the TODAY function instead:

=IF(TODAY()=DATEVALUE("10/1/92"),TRUE,FALSE)

### How to Work with Date Formulas

#### How to Find the Number of Days Between Today and a Future Date

To find the number of days between now and a date sometime in the future, use the following formulawhere

="mm/dd/yy"-NOW()

**"mm/dd/yy"**is the future date. Use the General format to format the cell that contains the formula.#### How to Find the Number of Days, Months, and Years Between Two Dates

To calculate the number of days, months, and years between two dates, where the start and end dates are entered in cells A1 and A2 respectively, follow these steps:1. Create a New workbook.

2. Click Blank Workbook

3. Type the following data in the workbook:

4. If you type the formula correctly, cell D1 displays:

2. Click Blank Workbook

3. Type the following data in the workbook:

A1:03/25/94 A2: 05/01/98

Type the following formula in cell D1:

=YEAR(A2)-YEAR(A1)-IF(OR(MONTH(A2)<MONTH(A1),AND(MONTH(A2)=MONTH(A1),

DAY(A2)<DAY(A1))),1,0)&" years, "&MONTH(A2)-MONTH(A1)+IF(AND(MONTH(A2)

<=MONTH(A1),DAY(A2)<DAY(A1)),11,IF(AND(MONTH(A2)<MONTH(A1),DAY(A2)

>=DAY(A1)),12,IF(AND(MONTH(A2)>MONTH(A1),DAY(A2)<DAY(A1)),-1)))&" months,

"&A2-DATE(YEAR(A2),MONTH(A2)-IF(DAY(A2)<DAY(A1),1,0),DAY(A1))&" days"

Note: If you copy and paste this formula, make sure that there are no line breaks. If there are line breaks, the formula will not work.

4. If you type the formula correctly, cell D1 displays:

4 years, 1 months, 6 days

##### Additional Formula Breakdown for Days, Months, and Years

This formula can also be broken down into individual segments of days, months, and years as follows.Note If you copy and paste these formulas, make sure that there are no line breaks or the formulas will not work.

Note In the earlier formulas, &" days", &" months", and &" years" are optional. These allow you to distinguish the results as days, months, and years.

Time segment Formula

------------------------------------------------------------------------

The remaining number of =A2-DATE(YEAR(A2),MONTH(A2)-

days between two dates, IF(DAY(A2)<DAY(A1),1,0),DAY(A1))&"days"

ignoring years and months

The remaining number of =MONTH(A2)- MONTH(A1)+IF(AND(MONTH(A2)

months between two dates, <=MONTH(A1), DAY(A2)<DAY(A1)),11,

ignoring years and days IF(AND(MONTH(A2)<MONTH(A1),DAY(A2)>=

DAY(A1)),12,IF(AND(MONTH(A2)>MONTH(A1),

DAY(A2)<DAY(A1)),-1)))&" months"

The number of whole years =YEAR(A2)-YEAR(A1)-IF(OR(MONTH(A2)<

between two dates MONTH(A1),AND(MONTH(A2)=MONTH(A1),

DAY(A2)<DAY(A1))),1,0)&" years"

#### How to Find the Number of Weekdays Between Two Dates

To find the number of weekdays between two dates, where the start and end dates are typed in cells A1 and A2 respectively, follow these steps:1. Create a New workbook.

2. Click Blank workbook.

3. Type the following data in the workbook:

A1: 03/25/94 A2: 05/01/98

=NETWORKDAYS(A1,A2)"1071" appears as the result in cell D1.

#### How to Increase Dates Incrementally

To increase a date by a number of years, months, or days, use the following formula, where reference is either the date value or cell reference that contains the date, and value1, value2, and value3 are the increments by which you want to increase the year, month, and day, respectively.

=DATE(YEAR(reference)+value1,MONTH(reference)+value2,DAY(reference)+value3)

For example, to increase a date by one month, the formula is:

=DATE(YEAR(DATEVALUE("6/20/96")),MONTH(DATEVALUE("6/20/96"))+1,

DAY(DATEVALUE("6/20/96")))

### How to Work with Time Formulas

#### How to Calculate Elapsed Time

When you subtract the contents of one cell from another to find the amount of time elapsed between them, the result is a serial number that represents the elapsed hours, minutes, and seconds. To make this number easier to read, use the h:mm time format in the cell that contains the result.In the following example, if cells C2 and D2 contain the formula =B2-A2, and cell C2 is formatted in the General format, the cell displays a decimal number (in this case, 0.53125, the serial number representation of 12 hours and 45 minutes).

A1: Start Time B1: End Time C1: Difference D1: Difference

(General) (h:mm)

A2: 6:30 AM B2: 7:15 PM C2: 0.53125 D2: 12:45

If midnight falls between your start time and end time, you must account for the 24-hour time difference. You can do this by adding the number 1, which represents one 24-hour period. For example, you might set up the following table, which allows for time spans beyond midnight.

A1: Start Time B1: End Time C1: Difference D1: Difference

(General) (h:mm)

A2: 7:45 PM B2: 10:30 AM C2: 0.614583333 D2: 14:45

To set up this table, type the following formula in cells C2 and D2:

=B2-A2+IF(A2>B2,1)

#### How to Accumulate Hours and Minutes Greater Than 24 Hours

If you want to correctly display a time greater than 24 hours, you can use the 37:30:55 built-in format. If you want to use a custom format instead, you must enclose the hours parameter of the format in brackets, for example:

[h]:mm

#### How to Convert a Date to Its Decimal Number Equivalent

To convert a serialized date (h:mm:ss) to a decimal number (0.00), you must convert the serial number to a decimal by converting to a 24-hour base. You do this by multiplying the time by 24 as followswhere

=Time*24

**Time**is the number that you want to convert from a time format to a decimal number; this number can be a cell reference or a string of numbers in the TIMEVALUE function.For example, if cell A1 contains a time of "4:30" to represent four hours and 30 minutes, the formula is:

The result is 4.5.

=A1*24

If the cell contains both a date and a time, use the following formula:

For example, if cell A1 reads "6/20/96 4:30 AM", the formula is:

=(Time-INT(Time))*24

The result again is 4.5.

=(A1-INT(A1))*24

#### How to Convert a Decimal Number to Its Date Equivalent

To convert a decimal number (0.00) to its serial date equivalent (h:mm:ss), you must convert the serial number to a decimal by converting to a 24-hour base. You do this by dividing the time by 24 as followswhere

=Time/24

**Time**is the number that you want to convert from a decimal number to a date serial number and can be a cell reference or a real number. For example, if you have a value of 4.5 to represent four hours and 30 minutes in cell A1, the formula is:The result is 4:30.

=A1/24

### How to Transfer Files Between Microsoft Excel for Mac and Excel for Windows

By default, Excel for Mac uses the 1904 date system and Excel for Windows uses the 1900 date system. This means that when you type the serial number 1 in Excel for Mac and format it as a date, Excel displays it as 1/2/1904 12:00 a.m. Excel for Windows displays the serial number 1 as 1/1/1900 12:00 a.m.If you transfer files from Excel for Mac to Excel for Windows, this difference in the date systems should not cause a problem, because the date system is stored in each file. However, if you copy and paste between files with different date systems that originated on different platforms, dates may be displayed four years and one day away from their correct date.

To change to the 1904 date system in Excel for Windows, follow these steps:

- In Excel 2007 and later go to Excel Options.
- In Excel 2007 and later click the Advanced option. Scroll down to When calculating this workbook: and select the Use 1904 date system checkbox.

- On the
**Excel**menu, click**Preferences**. - Under Formulas and Lists choose Calculation.
- Under Workbook options click to clear the 1904 date system check box

## References

For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base: