Community Pick: Many members of our community have endorsed this article.

How to calculate Duration from text and number cell value

Shums FarukManaging Director/Excel VBA Developer
CERTIFIED EXPERT
I Love Challenges in MS-Excel
Where there is a will there are many ways. Finding one that works for you is the challenge!
Published:
Updated:
When you see single cell contains number and text, and you have to get any date out of it seems like cracking our heads.

I was attending to one of MS-Excel question here on EE and found this question very interesting and challenging, thought I should share with every one for future reference.


Suppose you have a cell value "10d, 10h, 10m, 10s" in A2, like below image:

A2.JPG


from above value you need to calculate a date & time from today's date & time like below image:


G2.JPG

Lets find out by following steps:


1. First lets remove all text contents of the cell by using Substitute Formula, we have to use this formula 4 times to remove 4 texts like d, h, m, s like below image:

B2-Formula.JPG B2-Value.JPG



2. Now we need to split all numbers after each commas. There are many formulas to do that, but I am using very useful function, which I found on some site. Below is the function I used:

Function FindWord(Source As String, Position As Integer)
Dim arr() As String
arr = VBA.Split(Source, ",") 'Change the string which suits you
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = "," 'Change the string which suits you
Else
    FindWord = arr(Position - 1)
End If
End Function

Using above function, I am gonning to split days, hours, mins and seconds in 4 different columns like below image:


Days
C2-Formula.JPG C2-Value.JPGHours
D2-Formula.JPG D2-Value.JPGMinutes
E2-Formula.JPG E2-Value.JPGSeconds
F2-Formula.JPG F2-Value.JPG


You would have seen, I have changed the last number to split as per appearance of commas.


3. Now the tricky steps, in this step we need to split our process but end result should be combined.a) Lets get the date part first, I need to find what would be the date 10 days earlier to today, as per our above calculation, very simple, I will just use below formula:


G2-Formula-1.JPG G2-Value-1.JPG


b) Now I need to find what would be the date 10 days after today, as per our above calculation, same steps like 3.a) instead of deducting, I am adding below:


H2-Formula-1.JPG H2-Value-1.JPG


You may change the date format as you like by replacing "mm/dd/yy"

c) Now lets do the same for Time, I need to find what would be the time 10 hours, 10 mins & 10 seconds earlier to current time:


G3-Formula.JPG G3-Value.JPG


d) Now I need to find what would be the time 10 hours, 10 mins & 10 seconds after current time:


H3-Formula.JPG H3-Value.JPG


Here also you may change the time format as you like by replacing "hh:mm:ss AM/PM" for 12 hours or "hh:mm:ss" for 24 hours time format.


4. You might be wondering, I would have merged both date & time formula to get in one cell, honestly, I was not sure, I will be able to get the right output :). Anyway this is what I am gonna do in this step to combine date & time:


Start Date & Time


G2-Formula-2.JPGEnd Date & Time
H2-Formula-2.JPGTo get final result:
G2-2.JPG



Please do not forget to press the "Thumb's Up" button if this article was helpful and valuable for EE members.

It also provides me with positive feedback in the form. Thanks!

28
2,733 Views
Shums FarukManaging Director/Excel VBA Developer
CERTIFIED EXPERT
I Love Challenges in MS-Excel
Where there is a will there are many ways. Finding one that works for you is the challenge!

Comments (9)

Thanks for making it so easy to understand!
Wow! This is impressive and so clear to understand. Thank you for sharing your invaluable knowledge :)
A simple and excellent solution of the complicated question. Well done Mr.Shums :-)
This is an excellent article. I appreciate you taking the time to write this.

Commented:
Thanks for taking the time to post this in such detail. Appreciate it.

View More

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.