Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in
x
or
x
x
Register
x

or

How to remove non numeric characters from cells in Excel?

Supposing you have a worksheet with lots of such data ABCD4578124YUIOH, and you only want to remove the non-numeric characters  ABCDYUIOH but keep the numeric characters in cells. Of course, you can remove those characters one by one, but right here you can get rid of the non-numeric characters from cells quickly as follows:

Remove non-numeric characters with VBA code

A handy tool to remove non-numeric characters with one click


Remove numeric, alphabetic,non-numeric, non-printable or alphanumeric characters from text strings:

With Kutools for Excel's Remove Characters utility, you can quickly remove numreic, non-numeric, alphabetic or non-alphabetic characters and so on from a list of text strings as you need.

doc remove non numeric characters 6

Kutools for Excel: with more than 200 handy Excel add-ins, free to try with no limitation in 60 days. Download and free trial Now!


Remove non-numeric characters with VBA code

To remove non-numeric characters from a range with VBA code, please do as follow:

1. Click Developer > Visual Basic to open the Microsoft Visual Basic for applications window. In the Microsoft Visual Basic for applications window, click Insert > Module, and then copy and paste the following codes into the module:

VBA: Remove all non-numeric characters

Sub RemoveNotNum()
'Updateby20131129
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[0-9]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

2. Then click the button to run the code, In the popping up KutoolsforExcel dialog box, select a range with the non-numeric characters you want to remove, and then click the OK button. See screenshot:

doc remove non numeric characters 1 copy

3. Then all non-numeric characters in selected range are removed.

doc remove non numeric characters 2

If the numbers with decimal points, you can use the following VBA:

Sub RemoveNotNum()
'Updateby20131129
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[0-9.]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

You can see the results as below screenshot shown:

doc remove non numeric characters 3


A handy tool to remove non-numeric characters with one click

For removing non-numeric characters in a range, Kutools for Excel’s Remove Characters utility can get it done with one click.

Kutools for Excel : with more than 300 handy Excel add-ins, free to try with no limitation in 60 days. 

After installing Kutools for Excel, please do as below:

1. Highlight the range you want to remove non-numeric characters. Click Kutools > Text > Remove Characters.

doc remove non numeric characters 4

2. In the Remove Characters dialog box, check the Non-numeric option in the Remove Characters section, and then click the OK or Apply button. And the non-numeric characters are removed from the selection immediately. See screenshot:

doc remove non numeric characters 5

Click to Download Kutools for Excel and free trial Now!

For more detailed information about Remove Characters of Kutools for Excel, please visit Remove characters features description.


Demo: Remove numeric, alphabetic, non-printable or alphanumeric characters from cells

Kutools for Excel: with more than 200 handy Excel add-ins, free to try with no limitation in 60 days. Download and free trial Now!


Related articles:


Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial.
kte tab 201905

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
officetab bottom
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Abi DC · 2 years ago
    HI Thanks for the coding, i am getting the syntax error highlighted on For i = 1 To Len(Rng.Value) and the debug Sub RemoveNotNum() is highlighted in yellow.. kindly advice.
  • To post as a guest, your comment is unpublished.
    usuc · 2 years ago
    The VBA works great. I modified it to always work on a column, as shown:

    For Each Cell In Range("B2:B" & ActiveSheet.UsedRange.Rows.Count)

    xOut = ""

    For i = 1 To Len(Cell.Value)

    xTemp = Mid(Cell.Value, i, 1)

    If xTemp Like "[0-9]" Then

    xStr = xTemp

    Else

    xStr = ""

    End If

    xOut = xOut & xStr

    Next i

    Cell.Value = xOut

    Next

    I also used this to sort a column by the last digit, changing the last part to Cell.Value = Right(xOut, 1) then sorting it numerically.
  • To post as a guest, your comment is unpublished.
    Naresh kumar · 3 years ago
    Send me it on my email id
    • To post as a guest, your comment is unpublished.
      samola · 2 years ago
      Hi,

      I want to use this macro but want to pre-define a range. Can you please let me know how to pre-define the range.

      Thanks,
      Samit
  • To post as a guest, your comment is unpublished.
    Cole · 4 years ago
    Just wanted to let you know that if the string starts with zero(s), or starts with letters, followed by zero(s), followed by the rest of the string this will remove all of the beginning zeroes. This is weird because it doesn't remove the zero(s) if they are between other non-zero numbers within the string, only if they start the string or are the first numbers after the initial letters in a string.

    Example.

    0060100 would come out as 60100

    PFF057726 would come out as 57726.

    Let me know if you have an explanation for this and can think of a solution. Thank you.
  • To post as a guest, your comment is unpublished.
    Roger · 4 years ago
    Thanx Guys for such a nice work. The script is awesome and it worked for. Keep it up guys.
  • To post as a guest, your comment is unpublished.
    Easter2015 · 4 years ago
    Use this Formaula for replacing the existing character with the new one
    =SUBSTITUTE(text,old_text,new_text,[instance_num])
    for ex-=SUBSTITUTE(TRIM(G1),"/","")
    Wish U all Happy Easter 2015
  • To post as a guest, your comment is unpublished.
    amanda · 5 years ago
    I received an error when I hit the > run button in the developer:

    Compile Error:
    Expected:end of statement


    and the word "non" in non-numeric is highlighted
  • To post as a guest, your comment is unpublished.
    Daniel · 5 years ago
    Wow. that worked , exactly what I needed.

    Thanks,
  • To post as a guest, your comment is unpublished.
    Julie Hodnett · 5 years ago
    Awesome Worked GREAT!!!!!!!!
  • To post as a guest, your comment is unpublished.
    Bryan Steven · 5 years ago
    wouldn't be better to replace the input-box method by just setting
    WorkRng like this:
    Set WorkRng = Intersect(ActiveSheet.UsedRange, Selection)
    that way if user select a entire column it wouldn't generate any error.
  • To post as a guest, your comment is unpublished.
    jo · 5 years ago
    thankyou worked well
  • To post as a guest, your comment is unpublished.
    JW · 6 years ago
    sample code for comments