One crack at this to try out ..
Source data as posted assumed representative and running in C60 down,
eg: Callable - Sinking Fund 05/01/08@100 - Escrowed
Put in D60:
=IF(ISNUMBER(SEARCH("Callable",C60)),TRIM(MID(C60, SEARCH("
",C60,SEARCH("@",C60)-9)+1,SEARCH(" ",C60,SEARCH("@",C60)+1)-SEARCH("
",C60,SEARCH("@",C60)-9))),"")
D60 returns: 05/01/08@100
Put in E60:
=IF(ISNUMBER(SEARCH("Callable",C60)),"",TRIM(MID(C 60,SEARCH("-",C60,SEARCH("
",C60,SEARCH("@",C60)+1)+1)+1,99)))
E60 returns: "" (ie blank)
[If "Callable" is not found in C60's text string, then E60 will return:
Escrowed]
Select D60:E60, copy down as far as required
--
Max
Singapore
http://savefile.com/projects/236895
xdemechanik
---
"Iguss" wrote:
Dear,
I already have exhausted my sources to find a formula that would extract
specific text based on a criteria.
So here it is
I have
Callable - Sinking Fund 05/01/08@100 - Escrowed
I need to extract text 05/01/08@100 from that string if it is "Callable",
and move remaining text to next column if it isn't.
=IF(ISNUMBER(FIND("Callable",C60)),RIGHT(C60,3+LEN (C60)-FIND("/",C60)),LEFT(C60,LEN(C60)-FIND(" ",C60)))
That takes care of left part and leaved 05/01/08@100 - Escrowed
However this
=IF(ISNUMBER(FIND("Callable",C61)),(LEFT(C61,LEN(C 61)-FIND("-",C61))))
gives Callable - Sinking Fund 05/01/08@100
Which part of the function I am missing (MID) that will give me exactly
if Callable then 05/01/08@100 if not then Escrowed goes to next
column.
Thank you for your help.