Intro
Extracting numbers from a string in Excel can be a useful skill, especially when working with large datasets that contain a mix of numeric and text data. Whether you're trying to extract phone numbers, IDs, or any other type of numeric data, Excel provides several methods to achieve this. The importance of extracting numbers from strings lies in its ability to help organize, analyze, and make sense of the data, which can be crucial for decision-making and data-driven insights.
In many cases, data imported into Excel from external sources may contain numeric information embedded within text strings. For instance, a column might contain customer IDs in the format "Customer-12345," where the actual ID is the numeric part. Extracting these numbers can help in sorting, filtering, and performing calculations based on this data. Furthermore, in data analysis and science, cleaning and preprocessing data, including extracting relevant information like numbers from strings, is a fundamental step before proceeding with analysis or modeling.
Extracting numbers from strings in Excel can be approached in several ways, including using formulas, Excel's built-in functions, or even VBA scripts for more complex scenarios. The choice of method depends on the complexity of the strings, the nature of the numbers to be extracted, and personal preference. Below, we'll delve into some of the most common and effective methods to extract numbers from strings in Excel.
Introduction to Extracting Numbers

Extracting numbers from strings is a task that involves isolating the numeric characters from a text that contains both letters and numbers. This can be challenging, especially when the numbers are not in a standard format or are mixed with other characters. Excel's versatility in handling such tasks makes it a powerful tool for data manipulation.
Using Formulas to Extract Numbers

One of the most straightforward methods to extract numbers from strings in Excel is by using formulas. Excel provides several functions that can help in this process, including the TEXT
, VALUE
, LEFT
, RIGHT
, MID
, FIND
, and LEN
functions, among others. For example, if you want to extract a number from a string where the number's position is fixed, you can use the MID
function. However, when the position of the number varies, more complex formulas involving the FIND
and LEN
functions might be necessary.
Example Formula
Suppose you have a string "ABC123DEF" in cell A1, and you want to extract the number "123". If the number is always three digits long and starts after the third character, you can use the following formula:
=MID(A1,4,3)
This formula extracts three characters starting from the fourth position, which corresponds to the number "123".
Regular Expressions in Excel

Regular expressions (regex) offer a powerful way to extract patterns from strings, including numbers. While Excel does not natively support regex in its standard formulas, you can use VBA to leverage regex capabilities. This involves creating a user-defined function (UDF) that uses the VBScript.RegExp
object to find and extract numbers from strings.
Creating a UDF for Regex
- Open the Visual Basic for Applications editor (VBA) by pressing
Alt + F11
or navigating to Developer > Visual Basic. - Insert a new module by right-clicking on any of the objects for your workbook in the Project window and choosing
Insert
>Module
. - Paste the following code into the module:
Function ExtractNumbers(str As String) As String
Dim regex As Object
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = "\d+"
regex.Global = True
ExtractNumbers = regex.Replace(str, " ")
End Function
- Save the module and return to your Excel sheet.
You can then use the ExtractNumbers
function in your Excel formulas to extract numbers from strings.
Using Power Query

Power Query, now known as Get & Transform Data in Excel 2016 and later versions, offers another method to extract numbers from strings. This method involves using the Text
and Number
functions within Power Query to manipulate the data.
- Select your data range and go to
Data
>From Table/Range
to open Power Query Editor. - In the Power Query Editor, you can use the
Text
functions to extract numbers. For example, to extract numbers from a string, you might use theText.Select
function.
Example Power Query
= Table.AddColumn(#"Previous Step", "Extracted Numbers", each Text.Select([YourColumnName], {"0".."9"}))
Replace #"Previous Step"
with the actual name of your previous step in Power Query, and YourColumnName
with the name of the column containing the strings from which you want to extract numbers.
Gallery of Extracting Numbers Methods
Extracting Numbers Image Gallery










Frequently Asked Questions
What is the easiest way to extract numbers from a string in Excel?
+The easiest way often involves using Excel formulas, specifically functions like MID, FIND, and LEN, depending on the structure of your data.
Can I use regular expressions in Excel formulas?
+Excel formulas do not natively support regular expressions. However, you can use VBA to create user-defined functions that utilize regex for pattern matching and extraction.
How do I extract numbers from strings when the position of the numbers varies?
+When the position of the numbers varies, you might need to use more complex formulas that involve the FIND and LEN functions to dynamically locate the numbers within the strings.
In conclusion, extracting numbers from strings in Excel is a versatile skill that can be achieved through various methods, ranging from simple formulas to more complex VBA scripts and Power Query transformations. By understanding and mastering these techniques, you can efficiently manipulate your data, making it more organized and analysis-ready. Whether you're dealing with simple or complex data extraction tasks, Excel's robust set of tools and functions ensures that you have the capability to handle a wide range of scenarios. If you have any experiences or tips on extracting numbers from strings in Excel, feel free to share them in the comments below. Additionally, if you found this article helpful, consider sharing it with others who might benefit from learning about the various methods of extracting numbers from strings in Excel.