x
• Status: Solved
• Priority: Medium
• Security: Public
• Views: 809

# Extract # Days and Months from Formula

Experts,
I have this formula:
=YearsMonthsDays(\$A\$8,\$C\$8,\$D\$4,\$D\$5)

and it returns X Years, Y Months and Z Days

I need to incorporate the Months and Days into a formula I am using
How can I extract the Months from the YearsMonthsDays formula and convert that to days?

Lets say that the YearsMonthsDays = 10 months...I would want the 10 months to convert to 10*30 = 300 days but in addition to that I would want to add the number of days that was in the formula.  So, if there was 10 months and 10 days then the answer would be 300+10 = 310 days.

If there were Years involved then I would have to strip the years from the conversion to days.  I am only interested in Days...not the # days in the year.

thank you
0
pdvsa
• 3
• 3
• 3
• +3
1 Solution

Commented:
Since not all months have 30 days, simply multiplying the number of months by 30 seems a pretty inaccurate way to go about this.

Consider:

Suppose you had a result of 5 years, 11 months, 30 days.

Your approach would call that 360 days, when the right answer should be either 364 or 365, depending on leap years.
0

Commented:
It seems to me that it might be easier to extract that information from the input cells rather than use your function and then convert to something else, what inputs do you have for \$A\$8, \$C\$8, \$D\$4 & \$D\$5, perhaps the total days can be calculated from those?

regards, barry
0

Commented:
Would you kindly share what goes into \$A\$8,\$C\$8,\$D\$4,\$D\$5 ?  for one of your cells.

Dave
0

Commented:
What are the values that feed that formula?

I assume that it is a user defined function, can you post the code behind it?
0

Commented:
Despite my earlier comment this formula should extract the months *30 +days from the data, assuming it's in cell B2

=SUM(MID(B2,FIND({"mon","day"},B2)-3,2)*{30,1})

but I agree with Patrick, you might get a more accurate number if you know the actual dates

regards, barry
0

Commented:
Sorry, best to change to SEARCH....

=SUM(MID(B2,SEARCH({"mon","day"},B2)-3,2)*{30,1})

regards, barry
0

Commented:
If you assume the "start day" is in B1 and the "end day" is in B2, then this formula appears to be getting the remaining days after years have been taken into account:

=B2-DATE(YEAR(B2)-(B2<DATE(YEAR(B2),MONTH(B1),DAY(B1))),MONTH(B1),DAY(B1))
0

Commented:
pdvsa,

Might

=DATEDIF(StartDate,FinishDate,"d")

do what you want?

Patrick(ab)
0

Project financeAuthor Commented:
GEEZ...did not think I would have had a response yet.

It does not have to be accurate and this is why I just chose to use 30 days for each month.

let me test em...be back...
0

Project financeAuthor Commented:
OK barry's worked as did all the rest. I will have to award pts to barry though.  I would like to split but I dont believe that is fair since it is first answer that helped me solve problem...

I will be posting another question just like this but will strip the Months and days and leave only the years (1 for 1 year, 2 for 2 years etc...not to worry about fraction thereof... will post in a few min...
0

Commented:
pdvsa,

>I would like to split but I dont believe that is fair since it is first answer that helped me solve problem...

That's OK with me. Don't worry about it as the decision is very much yours - and you've got a usable answer from Barry.

Patrick
0

Project financeAuthor Commented:
thank you.
0

Commented:
pdvsa,

For the new question try:

=DATEDIF(StartDate,FinishDate,"y")

Patrick
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.