[Last Call] Learn about multicloud storage options and how to improve your company's cloud strategy. Register Now

x
Solved

# Extract # Days and Months from Formula

Posted on 2011-02-21
Medium Priority
804 Views
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
Question by:pdvsa
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 3
• 3
• 3
• +3

LVL 93

Expert Comment

ID: 34946842
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

LVL 50

Expert Comment

ID: 34946851
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

LVL 42

Expert Comment

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

Dave
0

LVL 11

Expert Comment

ID: 34946862
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

LVL 50

Expert Comment

ID: 34946883
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

LVL 50

Accepted Solution

barry houdini earned 2000 total points
ID: 34946902
Sorry, best to change to SEARCH....

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

regards, barry
0

LVL 93

Expert Comment

ID: 34946946
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

LVL 45

Expert Comment

ID: 34947133
pdvsa,

Might

=DATEDIF(StartDate,FinishDate,"d")

do what you want?

Patrick(ab)
0

Author Comment

ID: 34947158
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

Author Comment

ID: 34947240
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

LVL 45

Expert Comment

ID: 34947270
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

Author Closing Comment

ID: 34947350
thank you.
0

LVL 45

Expert Comment

ID: 34947376
pdvsa,

For the new question try:

=DATEDIF(StartDate,FinishDate,"y")

Patrick
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A little background as to how I came to I design this code: Around 5 years ago I designed an add-in that formatted Excel files to a corporate standard, applying different cell colours and font type depending on whether the cells contained inputs,â€¦
Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a â€¦