Explanation

Note: in this example, we are calculating the end position in order to extract a substring with a literal start and end position. However, if you know the number of characters to extract, you can just plug in that number directly.

In the example on this page, we are using the MID function to extract text based on a start and end position. The MID function accepts three arguments: a text string, a starting position, and the number of characters to extract. The text comes from column B, and the starting position comes from column C. The number of characters to extract is calculated by subtracting the start from end, and adding 1. In cell E6:

=MID(B5,C5,D5-C5+1)
=MID("Perfect is the enemy of good",1,7-1+1)
=MID(B5,1,7) // returns "Perfect"

Functions to extract substrings

Excel provides three primary functions for extracting substrings:

=MID(txt,start,chars) // extract from middle
=LEFT(txt,chars) // extract from left
=RIGHT(txt,chars) // extract from right

Click on function names above for details and linked examples.

Finding start and end positions with a formula

In the example shown, start and end positions are based on hardcoded values. However, it is possible to calculate positions with the FIND function and SEARCH function . See links below for examples.

Explanation

The foundation of this formula is the MID function, which extracts a specific number of characters from text, starting at a specific location. To figure out where to start extracting text, we use this expression:

SEARCH("(",B5)+1

This locates the left parentheses and adds 1 to get the position of the first character inside the parentheses. To figure out how many characters to extract, we use this expression:

SEARCH(")",B5)-SEARCH("(",B5)-1

This locates the second parentheses in the text, and subtracts the position of the first parentheses (less one) to get the total number of characters that need to be extracted. With this information, MID extracts just the text inside the parentheses.

Finally, because we want a number as the final result in this particular example, we add zero to text value returned by MID:

+0

This math operation causes Excel to coerce text values to numbers. If you don’t need or want a number at the end, this step is not required .