### Vba excel datediff function

For some reason, Microsoft has decided not to document this function in any other versions.

If either Date1 or Date2 is not a valid date, datedif will return a #value error.

Date1: 1-Jan-2008 Date2: 1-July-2009 Interval: yd Result: 182 Explanation: There are 182 days between the dates if the dates are considered to have the same year.

Date1: 1-Jan-2007 Date2: 1-July-2008 Interval: yd Result: 181 Explanation: There are 181 days between the dates if the dates are considered to have the same year.Since Date1 is not a leap year, the date 29-Feb is not counted.If you have the interval in another cell referenced by the formula, that cell should not have"s around the interval string.If Interval is not one of the items listed in above, datedif will return a #NUM error.This makes a difference when one year is a leap year.If you want to suppress the 0 values, and return a result such as 8 months 14 days or 14 days where the 0-valued components are not displayed, use a formula like the following: years datedif(A1,B1 ym " months days" This will display only the.Datedif(Date1,Date2,A1) cell A1 should contain m not "m".Date1: 1-Jan-2007 Date2: 31-Jan-2007 Interval: md Result: 30 Explanation: There are 30 days between the 1st and 31st of the dates when both dates' month and years are considered to be the same.Finally, we use a MsgBox to display the number of days between the two dates.Date1: 1-Jan-2007 Date2: 1-July-2008 Interval: ym Result: 6 Explanation: There are 6 months between the two dates if the dates are considered to have the same year.For example, the formula below will calculate the age of a person as of the current date, where BirthDate is the person's date of birth.For example, with the formula.The day value will always be displayed, but the year and/or the month value may be suppresed.Result when you click the command button on the sheet: Change "d" to "ww" to get the number of weeks between two dates.In typical usage to calculate the number of years, months, and days between two dates, you would use a formula such as the following, where A1 is the start date and B1 is the end date: datedif(A1,B1 y " years months " datedif(A1,B1 md ".Date1: 1-Jan-2007 Date2: 31-Jan-2007 Interval: m Result: 0 Explanation: There 0 complete calendar months between the two dates.