The tutorial explains the syntax of the Excel FIND and SEARCH functions and provides formula examples of advanced non-trivial uses.
In the last article, we covered the basics of the Excel Find and Replace dialog. In many situations, however, you may want Excel to find and extract data from other cells automatically based on your criteria. So, let's have a closer look at what the Excel search functions have to offer.
Excel FIND function
The FIND function in Excel is used to return the position of a specific character or substring within a text string.
The syntax of the Excel Find function is as follows:
The first 2 arguments are required, the last one is optional.
- Find_text - the character or substring you want to find.
- Within_text - the text string to be searched within. Usually it's supplied as a cell reference, but you can also type the string directly in the formula.
- Start_num - an optional argument that specifies from which character the search shall begin. If omitted, the search starts from the 1st character of the within_text string.
If the FIND function does not find the find_text character(s), a #VALUE! error is returned.
For example, the formula =FIND("d", "find")
returns 4 because "d" is the 4th letter in the word "find". The formula =FIND("a", "find")
returns an error because there is no "a" in "find".
Excel FIND function - things to remember!
To correctly use a FIND formula in Excel, keep in mind the following simple facts:
- The FIND function is case sensitive. If you are looking for a case-insensitive match, use the SEARCH function.
- The FIND function in Excel does not allow using wildcard characters.
- If the find_text argument contains several characters, the FIND function returns the position of the first character. For example, the formula FIND("ap","happy") returns 2 because "a" in the 2nd letter in the word "happy".
- If within_text contains several occurrences of find_text, the first occurrence is returned. For example, FIND("l", "hello") returns 3, which is the position of the first "l" character in the word "hello".
- If find_text is an empty string "", the Excel FIND formula returns the first character in the search string.
- The Excel FIND function returns the #VALUE! error if any of the following occurs:
- Find_text does not exist in within_text.
- Start_num contains more characters than within_text.
- Start_num is 0 (zero) or a negative number.
Excel SEARCH function
The SEARCH function in Excel is very similar to FIND in that it also returns the location of a substring in a text string. Is syntax and arguments are akin to those of FIND:
Unlike FIND, the SEARCH function is case-insensitive and it allows using the wildcard characters, as demonstrated in the following example.
And here's a couple of basic Excel SEARCH formulas:
=SEARCH("market", "supermarket")
returns 6 because the substring "market" begins at the 6th character of the word "supermarket".
=SEARCH("e", "Excel")
returns 1 because "e" is the first character in the word "Excel", ignoring the case.
Like FIND, Excel's SEARCH function returns the #VALUE! error if:
- The value of the find_text argument is not found.
- The start_num argument is greater than the length of within_text.
- Start_num is equal to or less than zero.
Further on in this tutorial, you will find a few more meaningful formula examples that demonstrate how to use SEARCH function in Excel worksheets.
Excel FIND vs. Excel SEARCH
As already mentioned, the FIND and SEARCH functions in Excel are very much alike in terms of syntax and uses. However, they do have a couple of differences.
1. Case-sensitive FIND vs. case-insensitive SEARCH
The most essential difference between the Excel SEARCH and FIND functions is that SEARCH is case-insensitive, while FIND is case-sensitive.
For example, SEARCH("e", "Excel") returns 1 because it ignores the case of "E", while FIND("e", "Excel") returns 4 because it minds the case.
2. Search with wildcard characters
Unlike FIND, the Excel SEARCH function accepts wildcard characters in the find_text argument:
- A question mark (?) matches one character, and
- An asterisk (*) matches any series of characters.
To see how it works on real data, consider the following example:
As you see in the screenshot above, the formula SEARCH("function*2013", A2) returns the position of the first character ("f") in the substring if the text string referred to in the within_text argument contains both "function" and "2013", no matter how many other characters there are in between.
Tip. To find an actual question mark (?) or asterisk (*), type a tilde (~) before the corresponding character.
Excel FIND and SEARCH formula examples
In practice, the Excel FIND and SEARCH functions are rarely used on their own. Typically, you would utilize them in combination with other functions such as MID, LEFT or RIGHT, and the following formula examples demonstrate some real-life uses.
Example 1. Find a string preceding or following a given character
This example shows how you can find and extract all characters in a text string to the left or to the right of a specific character. To make things easier to understand, consider the following example.
Supposing you have a column of names (column A) and you want to pull the First name and Last name into separate columns.
To get the first name, you can use FIND (or SEARCH) in conjunction with the LEFT function:
=LEFT(A2, FIND(" ", A2)-1)
or
=LEFT(A2, SEARCH(" ", A2)-1)
As you probably know, the Excel LEFT function returns the specified number of left-most characters in a string. And you use the FIND function to determine the position of a space (" ") to let the LEFT function know how many characters to extract. At that, you subtract 1 from the space's position because you don't want the returned value to include the space.
To extract the last name, use the combination of the RIGHT, FIND / SEARCH and LEN functions. The LEN function is needed to get the total number of characters in the string, from which you subtract the position of the space:
=RIGHT(A2,LEN(A2)-FIND(" ",A2))
or
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2))
The following screenshot demonstrates the result:
For more complex scenarios, such as extracting a middle name or splitting names with suffixes, please see How to split cells in Excel using formulas.
Example 2. Find Nth occurrence of a given character in a text string
Supposing you have some text strings in column A, say a list of SKUs, and you want to find the position of the 2nd dash in a string. The following formula works a treat:
=FIND("-", A2, FIND("-",A2)+1)
The first two arguments are easy to interpret: locate a dash ("-") in cell A2. In the third argument (start_num), you embed another FIND function that tells Excel to start searching beginning with the character that comes right after the first occurrence of dash (FIND("-",A2)+1).
To return the position of the 3rd occurrence, you embed the above formula in the start_num argument of another FIND function and add 2 to the returned value:
=FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2)
Another and probably a simpler way of finding the Nth occurrence of a given character is using the Excel FIND function in combination with CHAR and SUBSTITUTE:
=FIND(CHAR(1),SUBSTITUTE(A2,"-",CHAR(1),3))
Where "-" is the character in question and "3" is the Nth occurrence you want to find.
In the above formula, the SUBSTITUTE function replaces the 3rd occurrence of dash ("-") with CHAR(1), which is the unprintable "Start of Heading" character in the ASCII system. Instead of CHAR(1) you can use any other unprintable character from 1 to 31. And then, the FIND function returns the position of that character in the text string. So, the general formula is as follows:
At first sight, it may seem that the above formulas have little practical value, but the next example will show how useful they are in solving real tasks.
Note. Please remember that the Excel FIND function is case-sensitive. In our example, this makes no difference, but if you are working with letters and you want a case-insensitive match, use the SEARCH function instead of FIND.
Example 3. Extract N characters following a certain character
To locate a substring of a given length within any text string, use Excel FIND or Excel SEARCH in combination with the MID function. The following example demonstrates how you can use such formulas in practice.
In our list of SKUs, supposing you want to find the first 3 characters following the first dash and pull them in another column.
If the group of characters preceding the first dash always contains the same number of items (e.g. 2 chars) this would be a trivial task. You could use the MID function to return 3 characters from a string, starting at position 4 (skipping the first 2 characters and a dash):
=MID(A2, 4, 3)
Translated into English, the formula says: "Look in cell A2, begin extracting from character 4, and return 3 characters".
However, in real-life worksheets, the substring you need to extract could start anywhere within the text string. In our example, you may not know how many characters precede the first dash. To cope with this challenge, use the FIND function to determine the starting point of the substring that you want to retrieve.
The FIND formula to return the position of the 1st dash is as follows:
=FIND("-",A2)
Because you want to start with the character that follows the dash, add 1 to the returned value and embed the above function in the second argument (start_num) of the MID function:
=MID(A2, FIND("-",A2)+1, 3)
In this scenario, the Excel SEARCH function works equally well:
=MID(A2, SEARCH("-",A2)+1, 3)
It's great, but what if the group of chars following the first dash contains a different number of characters? Hmm... this might be a problem:
As you see in the above screenshot, the formula works perfectly for rows 1 and 2. In rows 4 and 5, the second group contains 4 characters, but only the first 3 chars are returned. In rows 6 and 7, there are only 2 characters in the second group, and therefore our Excel Search formula returns a dash following them.
If you wanted to return all chars between the 1st and 2nd occurrences of a certain character (dash in this example), how would you proceed? Here is the answer:
=MID(A2, FIND("-",A2)+1, FIND("-", A2, FIND("-",A2)+1) - FIND("-",A2)-1)
For better understanding of this MID formula, let's examine its arguments one by one:
- 1st argument (text). It's the text string containing the characters you want to extract, cell A2 in this example.
- 2nd argument (start_position). Specifies the position of the first character you want to extract. You use the FIND function to locate the first dash in the string and add 1 to that value because you want to start with the character that follows the dash: FIND("-",A2)+1.
- 3rd argument (num_chars). Specifies the number of characters you want to return. In our formula, this is the trickiest part. You use two FIND (or SEARCH) functions, one determines the position of the first dash: FIND("-",A2). And the other returns the position of the second dash: FIND("-", A2, FIND("-",A2)+1). Then you subtract the former from the latter, and then subtract 1 because you don't want to include either dash. As the result, you will get the number of characters between the 1st and 2nd dashes, which is exactly what we are looking for. So, you feed that value to the num_chars argument of the MID function.
In a similar fashion, you can return 3 characters after the 2nd dash:
=MID(A2, FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2), 3)
Or, extract all the characters between the 2nd and 3rd dashes:
=MID(A2, FIND("-", A2, FIND("-",A2)+1)+1, FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2) - FIND("-", A2, FIND("-",A2)+1)-1)
Example 4. Find text between parentheses
Supposing you have some long text string in column A and you want to find and extract only the text enclosed in (parentheses).
To do this, you would need the MID function to return the desired number of characters from a string, and either Excel FIND or SEARCH function to determine where to start and how many characters to extract.
=MID(A2,SEARCH("(",A2)+1, SEARCH(")",A2)-SEARCH("(",A2)-1)
The logic of this formula is similar to the ones we discussed in the previous example. And again, the most complex part is the last argument that tells the formula how many characters to return. That pretty long expression in the num_chars argument does the following:
- First, you find the position of the closing parenthesis:
SEARCH(")",A2)
- After that you locate the position of the opening parenthesis:
SEARCH("(",A2)
- And then, you calculate the difference between the positions of the closing and opening parentheses and subtract 1 from that number, because you don't want either parenthesis in the result:
SEARCH(")",A2)-SEARCH("(",A2))-1
Naturally, nothing prevents you from using the Excel FIND function instead of SEARCH, because case-sensitivity or case-insensitivity makes no difference in this example.
Hopefully, this tutorial has shed some light on how to use SEARCH and FIND functions in Excel. In the next tutorial, we are going to closely examine the REPLACE function, so please stay tuned. Thank you for reading!
440 comments
I need to search/find/extract the specific text from a cell and paste it in another cell. Ex: if
Cell A1 has Apple|Mango|Orange in cell B1 I want to have word Apple by searching it in cell A1, if cell A1 has apple, the result in B1, it should show "Apple" like wise Cell A2 has Orange|Mango|Apple. in cell B2 I want to have word Mango by searching it in cell A2, if cell A2 has Mango, the result B2, it should show "Mango". Also, I want concatinate this 2 formulas in one cell. Can you please help me.
Hello!
If the string is found in the text, the SEARCH function returns a number. This condition can be checked with the ISNUMBER function and used in the nested IF statements.
=IF(ISNUMBER(SEARCH("Apple",A1)),"Apple", IF(ISNUMBER(SEARCH("Orange",A1)),"Orange",""))
Hello,
I am trying to find data (mixture of text and numbers) that are separate by 2 spaces. In one cell there can be 1,2,3 or up to 8 pieces of data to return. E,g, I want container numbers:
TSHB5102371 TSHB5112847 to XYZ
I want to separate out TSHB5102371 and TSHB5112847
The next cell have 6 strings I want to return into separate columns:
TSHB5115980 TSHB5112071 SLZU5114773 TSHB5118803 TSHB5107650 TSHB9518
As you can see they are not consistent in length (and they do not always start with the same 4 letters)
Here I would want to have a formula in 1 column that returns the 1st container number, 2nd container in the next column and so on. How do you adjust the formula in each column to get to the next string?
I am stuck at going beyond the 2nd and 3rd data points
Thanks
Hello!
You can use the Text to Columns tool to split text into cells.
I also recommend paying attention to Split Text feature. It is available as a part of our Ultimate Suite for Excel. You can install it in a trial mode and check how it works for free.
You can try formula from this guide: How to extract Nth word from a text string.
I hope I answered your question.
I am compiling yearly data on sales. it also includes new consignment, opening, and closing balances with customer names and numbers. It has text in the first column and numbers in the next column. in the new workbook, I want to add if the text is this in the entire sheet then put the value from the next cell. which formula is a good option.?
Hello!
If I understand your task correctly, to look up values, you can use the VLOOKUP function as described in this tutorial. If this is not what you wanted, please describe the problem in more detail.
Hi,I would greatly appreciate it if you could let me know which formula would be appropriate for the following task.
I want to specify all the position "A" in the sentence and the output is a list of positions.
For example:
TCCCTACATCAGTCTTCCAT
there is an "A" character at position 6, 8, 11, and 19.
Hello!
Use the MID function to find the desired character in a string. Merge the results into a string using the TEXTJOIN function.
=TEXTJOIN(",",,IF((MID(A1,ROW($A$1:$A$30),1)="A")*ROW($A$1:$A$30)>0, (MID(A1,ROW($A$1:$A$30),1)="A")*ROW($A$1:$A$30), ""))
I hope this will help.
Want to identify row wherein a particular word is available,
Example, Identify cell wherein "spent" word is available with help of a formula
Have tried FIND and SEARCH functions however output is the position of the start of the word i.e. for 1st Record result is 6
# Body Expected value
1 Have spent Rs. 770 on ICICI credit card TRUE
2 Debited Rs. 1680 from Savings account FALSE
3 Spent Rs. 800 on AXIS credit card TRUE
4 Rs. 1000 has been credited to Account FALSE
5 INR 1200 spent on ICICI Bank Card TRUE
Using dash to differentiate separate fields of the table for better understanding
#--- Body-----------------------------------------------------------Expected value
1 -- Have spent Rs. 770 on ICICI credit card ----------TRUE
2 -- Debited Rs. 1680 from Savings account-----------FALSE
3 -- Spent Rs. 800 on AXIS credit card--------------------TRUE
4 -- Rs. 1000 has been credited to Account------------FALSE
5 -- INR 1200 spent on ICICI Bank Card------------------TRUE
Hello!
If all the text is written in one cell, then you can show the result of the search for the desired word using the ISNUMBER function. It converts the found position number to TRUE or False.
Thanks Alexander for responding
problem statement is (as per example given) finding the cell wherein word "spent" is available in the cell body text by a formula, by using ISNUMBER function i can identify value is number or not which doesnt suffice my requirement
used FIND, however it gives me starting position of the word in the text
FIND("spent",E3) O/P is 6
SEARCH("spent",E3) O/P IS 6
@Alexander
Ur info helped
used below formula
=ISNUMBER(SEARCH("spent",E2))
and it worked
Thanks....
I will like to search the first 3 characters to match P0A, if it matches then display the full postal code.
Table
A B C
K0A1H0 Hospital
K0H 1B7 Church
P0A 1Z8 Home
Hi!
I don't really understand what you want to do. To get first 3 characters from text use LEFT function.
Hi,
I have a cell (A1) that contains a long paragraph with text. I have another cell (B1) with a short text with multiple sentences which I would like to know if it is embedded somewhere in cell A1.
How do I find out if A1 contains content of B1 and returns the formula with "true" or "yes"?
thank you!
Hi!
Please re-check the article above since it covers your task.
Use the ISERROR function to process the search result.
=IF(ISERROR(SEARCH(B1,A1)),"No","Yes")
Column A: I have a column that has id's , these are consistent and have 5 digits. ex: 12345
Column B: There is another field that has text, numbers and is a long string. abcdfef12345dkjsajdkjadj
Column C: has a another id that is required AB11111111
Column D : for the id 12345 result should be AB11111111
I want to lookup column A (i.e 12345), has to be looked up in column B and the result should be in Column D as shown above
Hello!
To determine if the value A1 is found in B1, use the ISNUMBER function.
=IF(ISNUMBER(SEARCH(A1,B1)),C1,"")
I hope this will help.
Hello,
I would like a formula to return all the information in the cell which contains "[ " starting from the last in the column.
The below formula seems to work but only with an exact search and not wild card "*"&[ &"*".
=LOOKUP("search value"; SORT(B2:B16); SORT(B2:B16;B2:B16;TRUE))
Can you help me?
Like below example. It should return: 13:35 - [ SF LOYEUNG CO LTD] Willoughby College, Ru
09:46 - [ KING SAVERS LTD (B VALLON)] Bo'Valon Mall, A
11:13 - A Tech Group, Rue la Bourdonnais,
12:50 - New Fashion, Rue de Suffren,
13:35 - [ SF LOYEUNG CO LTD] Willoughby College, Ru
15:55 - Les Copains d'abord, Rue Shivanand
Thank you
Hello!
If I understand your task correctly, the following formula should work for you:
=XLOOKUP("*"&"["&"*",A1:A9,A1:A9, ,2,-1)
You can learn more about XLOOKUP function in Excel in this article on our blog.
Hello Alexander,
Thank you for your quick reply. I am using google sheets and it is not recognizing Xlookup.
Do you have a suggestion?
Thank you in advance.
Priya
Hello Alexander,
I tried using excel for this calculation only and it works perfectly.
Thank you a lot.
However, I have a little issue, several sheets in the worksheet have a few merged cells which I would like to remove at one go. Unfortunately, my find button does not have a format field where I can find all merged cells and remove them at one go. Would you have a solution for this?
Thank you
Hi!
Unfortunately, using formulas, it is not possible to search and select cells with a specific format.
Hi i have a bank statement sheet
I want to create a Profit and loss sheet.
I have macro which can find specific name from the sheet and add or subtract the value and show it to me.bu the problem is i am not able extract data which have same vendor but different payment.
I.e
Zelle transfer ali
Zelle transfer hassan
Zelle
Zelle
I want to extract data for all 3 entries. Can i get any help woth that? Thank you
Hi,
I would greatly appreciate it if you could let me know which formula would be appropriate for the following task.
I have a table of over 10,000 entries, all containing a random 20 character string of letters, as follows:
...
TCCCTACATCAGTCTTCCAT
CAAGATGAATAACTAATTAT
ACTCAACAGCAAGACGACTG
...
I would like to determine the position of each "A" character in each of these individual cells.
For example
TCCCTACATCAGTCTTCCAT
there is an "A" character at position 6, 8, 11, and 19.
I would greatly appreciate it if you could point me in the right direction to screen through these 10,000 entries. Alternatively, I was thinking I could create 20 extra columns for each entry, each time clipping the first character of the 20 character string, and then determining the first occurrence of the "A" character each time, but this seems really inelegant.
Your help would be very much appreciated.
Thank you so much for your detailed article.
Hello!
To get a list of positions in the text of the desired character, try this formula:
=TEXTJOIN(",",TRUE,IF(MID(A2,SEQUENCE(20,1,1,1),1)="a", SEQUENCE(20,1,1,1),""))
This works in Office 365.
In Excel 2019 try formula:
=SUBSTITUTE(TRIM(CONCAT(IF(MID(A2,ROW(B1:B20),1)="a",ROW(B1:B20)," ")))," ",",")
In earlier versions, it couldn't be done with a single formula.
Hi Alexander,
This is brilliant. Thank you so much, it worked like a charm
Pete
Hello! I need support to figure out solution for following equation;
How to use IF, ISNUMBER and SEARCH functions to return exact match form number string like (1,2,3,4,5,10,11,12...). I use formula =IF(ISNUMBER(SEARCH("*1*",A1)),1,""), but it gives return value 1 to also to cell values like 7,8,10,11,12 as well when they are different and 1 is not mentioned. This is a for multiple choice questions, when respondents can choose morethan one option.
I have been trying a lot, watched many videos, didn't get an answer. Please help!
Hi!
What result do you want to get exactly?
To return the position number of a number in the text, you can use the formula
=IFERROR(SEARCH("1",A1),"")
Thanks for the reply.
I want to search for 1 if number string like 1,11,12,13,14,15...and if it's 11,12,13,14,15...as blank, currently it returns one for both.
Hello!
I recommend splitting the text in a cell as described in this tutorial. Then, in individual cells, you can search for the values you want.
Hello,
I tried a different formula combination, First is =LEFT(A2,FIND("#",SUBSTITUTE(A2,",","#",1))-1), it gives me first option from LEFT. Now from a number string like 2,3,4 OR 3,4,5,6,7 I will get 2 from first and 3 from second.
Using the same formula from RIGHT =RIGHT(A2,LEN(A2)-FIND("#",SUBSTITUTE(A2,",","#",1))) gives me first number from right without delimits. Like from a number string 2,3 OR 4,5 it will give me 3 & 5. However, it will be helpful only if the number string is having two numbers like 3,4 OR 5,6 OR 7,8.
My problem is I have more than 2 numbers and number string usually looks three, four OR five numbers (2,3,4.....5,6,7,8....5,6,7,6,7). In this case, the above formula will work only for LEFT side, right RIGHT it will not.
Using the above formulas, could you please suggest how to figure it out (may be use of MID).
Hello!
I have no other option other than the one I have already suggested to you. Split the numbers by cell.
Hello
I have the text below.
text text text 22-SU-22 text text text
text text 22-SU-22-22Y text text text
And I need to extract the 22-SU-22 and the 22-SU-22-22Y, the length of the extract text is not the same.
Regards,
Hello!
Is there a general pattern in your text? Without this, it is impossible to write a formula. I don't see such a pattern yet.
Hi,
I could use your help with the following ask:
I have a string of text in Cell A1: 51000 Amber TX AC. I separated in cell A2 to be 51000 and Cell A3 is TX AC.
How can I use a formula to extract "Amber" from Cell A1 by using A2 and A3? I tried a Mid function: =mid(a1, len(a2)+1,find(A3,A2,1)-1), but this results in "Amber TX AC" instead of just "Amber"
Any help is much appreciated!
Hello!
To find the position of the Nth occurrence of space in cell A1, use the formula
=FIND("#",SUBSTITUTE(A1," ","#",1))
Read more about this in this guide.
Replace 1 with the desired number.
To extract the 2nd word, you can use the formula
=MID(A1,FIND("#",SUBSTITUTE(A1," ","#",1))+1, FIND("#",SUBSTITUTE(A1," ","#",2))- FIND("#",SUBSTITUTE(A1," ","#",1)))
This should solve your task.
Hey there, I'm trying to pull the data from right of the last " - " of these cell (my product description separating with spaces " - ") but can't seem to get it to work with all the values since some have a "-" in the name and some have 3 " - " and others have 4 separating different parts of the name.
Bob J - 727 - 18-10102 - GPA Services - GPA Hourly Session (2-4 people)
Spencer M - 717 - 10301 - GPA Transportation fee
Spencer M - 717 - 10202 - GPA Materials- GPA Printed Materials Fee (Phase 2)
Spencer M - 717 - 18-10102 - GPA Services - GPA Hourly Session (2-4 people)
Soumya S - 718 - 10301 - GPA Transportation fee
Soumya S - 718 - 10202 - GPA Materials - GPA Printed Materials Fee (Phase 2)
Soumya S - 718 - 18-10102 - GPA Services - GPA Hourly Session (2-4 people)
Emily S - 719 - 10301 - GPA Transportation fee
Emily S - 719 - 10202 - GPA Materials- GPA Printed Materials Fee (Phase 2)
Emily S - 719 - 18-10102 - GPA Services - GPA Hourly Session (2-4 people)
Tom H - 730 - 10301 - GPA Transportation fee
Thank You!!
Hello!
To return text after the last "–" character, use the formula:
=MID(A1,SEARCH("#",SUBSTITUTE(A1,"–","#", LEN(A1)-LEN(SUBSTITUTE(A1,"–",""))))+1,100)
Hope this is what you need.
When I paste it and substitute my cell I get a #VALUE!
Hello!
Replace the em dash with a short dash in the formula. You will get the text after the last dash.
we have below text lines
TX01 INR 413IN TX02 INR 186K3 TX03 INR 236P2
TX04 INR 130YR
&
we have below column
YR
YR
IN
K3
P2
WO
YM
how we find the above mentioned components and get the value before that in as per component wise
as per earlier we need data should be come like below.
manually illustrated.
component image 1 image 2 image 3
YR 130 80 130
YR 50
IN 413 413
K3 186 724 372
P2 236 236 236
WO
YM 142
test image 1
TX01 INR 413IN TX02 INR 186K3 TX03 INR 236P2
TX04 INR 130YR
test image 2
TX01 INR 80YR TX02 INR 50YR TX03 INR 413IN
TX04 INR 724K3 TX05 INR 236P2
test image 3
TX01 INR 372K3 TX02 INR 236P2 TX03 INR 142YM
TX04 INR 130YR
Hi!
Your request goes beyond the advice we provide on this blog. This is a complex solution that cannot be found with a single formula. If you have a specific question about the operation of a function or formula, I will try to answer it.
Dear Sir,
below is my text in a1 & a2 cell
we need to find the "yr" text in cell a1 as well as cell a2.
after find "yr" text in cell a1 or a2 copy the value before that text showing (left side and it will 3 to 4 digit ) i.g. 130. to c1 cell
so how we use excel formula for that
TX01 INR 413IN TX02 INR 186K3 TX03 INR 236P2
TX04 INR 130YR
Hi!
To get part of the text, use the MID function.
=MID(A2,SEARCH("YR",A2)-4,4)
I hope it’ll be helpful.
Please can you help!
I am trying to extract text from cells e.g PID1234, PID99, PID 67814 (see examples of data below)
But these strings could be anywhere in a longer string of text and the length of the number part after PID could vary. There should always be a space before the text PID and a space after the last number.
For example,
column A data could be:
Row 1 - Ann Smith PID678 Mayo Nikki
Row 2 - creary m c PID95678
Row 3 - John smith PID54 000345 John smith PID54
I need a formula that will only return the number part after PID until the space after the number part. I am looking for a formula that would return the results from the data in Rows 1 - Row 3
Note: Row 3 is an example where the PID is populated twice, but would always be the same value.
Results required:
Row 1 - 678
Row 2 - 95678
Row 3 - 54
I can’t use Left, Right or Mid to get my results and am now at a loss! Be so grateful if you can help me.
Thanks
Hi Sue,
Please try this :
=MID(E93,FIND("PID",E93)+3,(IF(IFERROR(FIND(" ",E93,FIND("PID",E93)),0)=0,LEN(E93)-(FIND("PID",E93)+2),FIND(" ",E93,FIND("PID",E93))-(FIND("PID",E93)+3))))
I am using the MID formula here to extract the numbers after PID assuming the data is present E93 cell
First Parameter is the Cell E93
Second Paramter is Start_Num that is basically from which position to begin the extraction which is achieved by the FIND function (FIND("PID",E93)+3)
Third Parameter is the num_characters to extact which tries to find the SPACE after the PID number and subtract the position of the number starting after PID, incase there is no SPACE after PID number as in your Row 2 example, it subtracts the position of the number after the PID from the length of the string
Hope this helps !!
Thanks
Hello,
How might I go about using this formula but for multiple instances? I have a long string with multiple instances of "HP" followed by a 3 or 4 digit number followed by a space.
E.g "Template=J3 Primer=HP3271 Well=1 Notes=Low concentration of sample!!! Primers in stock Template=J3 Primer=HP2500 Well=2 Notes=Low concentration of sample!!! Primers in stock Template=J3 Primer=HP010 Well=3 Notes=Low concentration of sample!!! Primers in stock Template=J3 Primer=HP3274 "
And I would like it to return "HP3271, HP2500, HP010, HP3274" to a single cell.
Any help will be much appreciated.
Hello!
To extract multiple substrings by the pattern from text, use regular expressions. We have a special tutorial on this. Please see: How to extract substrings in Excel using regular expressions (Regex).
The formula below will do the trick for you:
=TEXTJOIN(", ";;RegExpExtract(A1;"\HP\d{3,4}"))
Dear Sir,
Thank you so much for your response and it is very help full to us.
below is my text in a1 & a2 cell
we need to find the "yr" text in cell a1 as well as cell a2.
after find "yr" text in cell a1 or a2 copy the value before that text showing (left side and it will 3 to 4 digit ) i.g. 130. to c1 cell
so how we use excel formula for that
TX01 INR 413IN TX02 INR 186K3 TX03 INR 236P2
TX04 INR 130YR
Your response is : =MID(A2,SEARCH("YR",A2)-4,4)
Reference to above my earlier query :
Now my "yr" text and their value place is not fix some time in a1,a2,a3 cell near "IN" , "K3" , "P2".
now how will find that text at a time in a1,a2,a3 cell and get that value in b1 cell using excel formula.
example is below:
1.
TX04 INR 978K3 TX05 INR 944P2 TX06 INR 91WO
TX01 INR 320YM TX02 INR 200YR TX03 INR 476IN
2.
TX04 INR 978K3 TX05 INR 944P2 TX06 INR 91WO
TX01 INR 320YR TX02 INR 200YM TX03 INR 476IN
3.
TX01 INR 320YR TX02 INR 200YR TX03 INR 944P2
TX04 INR 978K3 TX05 INR 944IN TX06 INR 91WO
TX07 INR 284YM
We looking forward on this quay.
Thanks & regards
That did the trick! Thank you sir.
I have a field that I want to find a specific text (word) in a column. the values in this column are a reference to a location in another tab of the workbook (more specifically, the column is result of an Index/Match formula). I see the actual text in the field column but when I search on a specific word it doesn't find it. How do I get around this?
Cell formula (in worksheet "B":
=IFERROR(INDEX('FARA CAS HWT'!N$4:N$288,MATCH($B33,'FARA CAS HWT'!$G$4:$G$288,),0),"")
Cell formula result display (in worksheet "B"): "Pin" Formula is retrieving this result from another tab/worksheet ("A") where "Pin" is listed in a table.
When I do a "find "Pin"" (ctl F) it can't find it in worksheet ("B") even thought it displays "Pin" in the cell.
thanks.
Hello!
To fine-tune your search, click Options in the right-hand corner of the Excel Find & Replace dialog.
Select Values in the "Look in" option.
I hope this will help.
Hi.. request to answer my question.
-If a number start with "0", how to use Find/Search function?
For eg. 0.25 - please extract the number before and after "."
Sheet1 - Col A contains Address of customer ( Cell contains more than 100 characters) - 10000 rows
Sheet 2- Col A contains Names of places - 29000 rows
I Require to find out whether the place is available in Sheet1- Col A. If available to display name of the place in Col B of Sheet1
Any solution?
Hello!
If I understand correctly, you need to find the Name of the place on Sheet1. I recommend reading this guide: How to VLOOKUP across multiple sheets in Excel.
Straight VLOOKUP formula is not working as the name of place in Sheet2 is a single word which should match with a part of the address .
Suppose I have
'23,Safdarjanng Enclave, New Delhi in Col A Row 2 of Sheet1'
'56, CCCC Street, Hyderabad' in Col A Row 3 of Sheet 1
'Mumbai' in Row 2 of Col A of Sheet2
'Vizag' in Row 3 of Col A of sheet2
'Chennai' in Row 4 of Col A of sheet2
'Hyderabad' in Row 5 of Col A of sheet2
'New Delhi' in Row 6 of Col A of sheet2
search for places as per Col A of Sheet 2 in Col A of sheet1 and 'New Delhi' should be placed in Row 2, Col B.
Thanks for sharing the link. Will go through the same. Whether any solution for the example given?
Hello!
As I can see from your second comment, your task is now different from the original one. If I got you right, the formula below will help you with your task:
=INDEX(Sheet1!$A$2:$A$20,MATCH(TRUE,ISNUMBER(SEARCH(Sheet2!A4,Sheet1!$A$2:$A$20,1)),0))
Here is the article that may be helpful to you: INDEX & MATCH in Excel - better alternative to VLOOKUP
Thanks for the help. Will try and give feedback
I have uneven text in multiple columns, i have used IF condition to get the text from all columns in one column. But i want the text with some exception. If the text is having either of word "-offline" or " - offline" , it should ignore those part from text. Hyphens are in many cells but I want to ignore this only wherever in the text it is with offline. I have used the mid and search function to resolve the issue, but ,wherever there is a text "-offline" it is not looking for that as i have embedded the text " - offline" in my search formula. What else i can use in my formula so that it can work for the text "-offline".
Hello!
I’m sorry but your task is not entirely clear to me. For me to be able to help you better, please describe your task in more detail. Please specify what you were trying to find, what formula you used and what problem or error occurred. Give an example of the source data and the expected result.
It’ll help me understand it better and find a solution for you.
Hi Alex, thanks for your reply, I am sorry for not been clear here. I have below data for eg
Column A Column B Consolidated
Bajaj Insur - Offline Payment Bajaj Insur
Jacksupplies - offline payment Jacksupplies
Dyne Corporation - Offline Dyne Corporation
clubhouse.com-Offline Payment clubhouse.com-Offline Payment
I need to get both columns in One one column "Consolidated", but I want wherever there is a text with "offline", my formula should check for immediate space and "-" and immediate spaces before "-" if any and exclude those parts from the text like "-Offline" or " - offline". I have used the term "offline" , so that if in any cell offline is without the text "payment", that also can be looked and excluded. Eg Column A line 3 there is only "offline". For this I have used below formula.
=IF(AND(A2="",B2=""),C2,IF(A2"",IFERROR(MID(A2,1,SEARCH(" - Offline",A2,1)-1),A2),IF(A2="",IFERROR(MID(B2,1,SEARCH(" - Offline",B2,1)-1),B2))))
However you can see, in my last line I am getting the column value with the text "-Offline Payment". I want to what can be the additional function used here to avoid these kind of cases, using my formula.
Hello!
If I understand your task correctly, the following formula should work for you:
=IFERROR(LEFT(A2,SEARCH("##",SUBSTITUTE(A2,"-","##",LEN(A2)-LEN(SUBSTITUTE(A2,"-",""))))-1),"")
Hope this is what you need.
I cannot use substitute here, as I have "-" in other cells as well without text "Offline". I want to exclude "-" only from the cell wherever it is with space and " offline".
I have other text as
Jyoti_ Jyoti (result should come as it is)
Amr_ amar_ amit (result should come as it is)
Summon (result should come as it is)
Amr-Offline (result should exclude "-Offline. In this case I dont have space before and after hyphen, Result should exclude hyphen and text "offline")
Jennifer - Offline Payment (result should exclude " - Offline", In this case I have space before and after hyphen, it should exclude both space with the text "offline")
Let me know if I am clear with my question now.
Hi!
The formula I sent to you was created based on the description you provided in your first request. However, as far as I can see from your second comment, your task is now different from the original one. If you could give a complete explanation, you would have saved a lot of your time and my time.
Try the following formula:
=TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"- offline","",1),"- Offline","",1),"-offline","",1),"-Offline","",1))