Substring in Excel
There's no SUBSTRING function in Excel. Use MID, LEFT, RIGHT, FIND, LEN, SUBSTITUTE, REPT, TRIM and MAX in Excel to extract substrings.
MID
To extract a substring, starting in the middle of a string, use the MID function in Excel.
Explanation: the MID function starts at position 7 (O) and extracts 6 characters.
LEFT
To extract the leftmost characters from a string, use the LEFT function in Excel.
To extract a substring (of any length) before the dash, add the FIND function.
Explanation: the FIND function finds the position of the dash. Subtract 1 from this result to extract the correct number of leftmost characters. The formula shown above reduces to LEFT(A1,4-1).
RIGHT
To extract the rightmost characters from a string, use the RIGHT function in Excel.
To extract a substring (of any length) after the dash, add LEN and FIND.
Explanation: the LEN function returns the length of the string. The FIND function finds the position of the dash. Subtract these values to extract the correct number of rightmost characters. The formula shown above reduces to RIGHT(A1,6-4).
Substring between parentheses
To extract a substring between parentheses (or braces, brackets, slashes, etc.), use MID and FIND in Excel.
1. The formula below is almost perfect.
Explanation: the FIND function finds the position of the opening parenthesis. Add 1 to find the start position of the substring. The formula shown above reduces to MID(A1,6+1,2). This MID function always extracts 2 characters.
2. Replace the 2 (third argument) with a formula that returns the length of the substring.
Explanation: subtract the position of the opening parenthesis and the value 1 from the position of the closing parenthesis to find the correct length of the substring.
Substring containing specific text
To extract a substring containing specific text in Excel (for example, the @ symbol), use SUBSTITUTE, REPT, MID, FIND, TRIM and MAX.
1. First, use SUBSTITUTE and REPT to substitute a single space with 100 spaces (or any other large number).
2. The MID function below starts 50 (1/2 * large number) positions before the position of the @ symbol and extracts 100 (large number) characters.
3. Use the TRIM function to remove the leading and the trailing spaces.
4. Put it all together.
Note: at step 2, the MID function starts 50 positions before the position of the @ symbol. If the email address is the first word in the sentence (cell A3), this results in a negative start position. In this case, the MAX function (see formula above) returns 1.
Flash Fill
If you're not a formula hero, use Flash Fill in Excel to automatically extract substrings.
Note: Excel does not insert formulas. If you change the text strings in column A, Excel will not update the numbers in Column B.
Excel 365
If you have Excel 365, use TEXTBEFORE or TEXTAFTER to extract substrings in Excel. These functions are simple and powerful.
1. We used the formula below to extract a substring (of any length) before the dash.
2. The TEXTBEFORE function below produces the exact same result.
3. We used the formula below to extract a substring (of any length) after the dash.
4. The TEXTAFTER function below produces the exact same result.
5. We used the formula below to extract a substring between parentheses.
Combine TEXTBEFORE and TEXTAFTER to produce the exact same result.
6. Use the TEXTAFTER function to extract the substring after the opening parenthesis.
7. Add the TEXTBEFORE function to extract the substring before the closing parenthesis.
If you're new here, welcome to Excel Easy! Join over 1 million monthly Excel learners. You can find popular courses here: Excel Functions and Data Analysis in Excel.