The SEARCH Function returns the position of a character within another piece of text you specify. Heavily used when parsing data and returning pieces of text that you do not know the position of.
The SEARCH function is a computer program that you run from a worksheet cell formula. It returns the position of a character within another piece of text you specify. You run the SEARCH function by typing its name in a formula then followed by the information it is suppose use. The SEARCH worksheet function is generally used in combination with other TEXT functions as a nested function. The functions that nest this function are generally the ones that use a start position in their argument list like MID or SUBSTITUTE. For example, say you had text on the worksheet that varied in number of characters but you know you always wanted to return 2 characters right after the first dash in the text. Then you could use the SEARCH function to find the position of the dash in the text, add 1 to that number and use it as the second argument to the MID function (see below). The idea is it would always track down the proper starting position of the dash regardless if the text varied in the number of characters. The search function also play an integral part in data mining and cleaning.
Whenever you type a formula in a worksheet cell, this is called syntax or grammar. The general SEARCH function syntax has a format like this when you type it in a worksheet cell:
=SEARCH(find_text, within_text, [start_num])
Where find_text, within_text, [start_num] are called the function argument list. Remember, you are running a computer program at this point so the program needs information to operate and that is why there is an argument list. When you see an argument list and you see square brackets [ ] around the argument name, this means the argument is optional and you do not have to include it when typing unless you need it. So for the syntax above, you need to include two arguments for the SEARCH function when typing it in a worksheet cell formula in order for it to calculate correctly. What argument values can be used are discussed below. Remember functions expect certain things in their argument lists, if you do not put the correct information in the list they will generate an error when run.
Since the SEARCH function is a computer program, it runs when you press Enter to enter the formula that contains it. If any of the arguments are wrong, the function will return an error.
When typing the SEARCH function in a worksheet cell formula, you need to replace the argument list with arguments separating each one with a comma (arg1,arg2...). Some typical arguments you can use are:
|Argument Type||Cell Formula||Explanation|
|Cell References||= SEARCH( "-", A1 )||SEARCH finds the position of the - in the text from cell A1|
|Range Reference||= SEARCH( "-", A1:A10 )||SEARCH finds the position of the - in the text from the range A1 to A10 and returns an array|
|Cell and Range Names||= SEARCH("-", Code_Names)||SEARCH finds the position of the - in the text from cell name Code_Names|
|Nested ( Very Common Approach )||= MID( A1, SEARCH( "-", A1) + 1, 2 )||SEARCH finds the position of the - in the text from cell A1 then 1 is added to obtain the starting character position that MID uses|
* It is possible to name a cell or group of cells on a worksheet and use that name in place of a range reference or cell reference. Consult Excel help on how to name a cell.
The worksheet seen below contains some typical worksheet formulas that run the SEARCH worksheet function. Pay close attention to the argument list and the syntax used to write the formula.
|1||113-CA-dfg||= MID( A1, SEARCH( "-", A1 ) +1 , 2 )||Returns CA from the text in cell A1. You must add 1 to SEARCH to start at the CA location|