Consell: altres idiomes es tradueixen en Google. Pots visitar el English versió d'aquest enllaç.
Iniciar Sessió
x
or
x
x
Registre
x

or

Com eliminar els caràcters no numèrics de les cel·les d'Excel?

Suposant que teniu un full de càlcul amb moltes d'aquestes dades ABCD4578124YUIOH, i només voleu eliminar els caràcters no numèrics ABCDYUIOH però manté els caràcters numèrics a les cel·les. Per descomptat, podeu eliminar aquests caràcters un per un, però aquí podeu desfer-vos dels caràcters no numèrics de les cel·les de la manera següent:

Elimineu els caràcters no numèrics amb el codi VBA

Una eina pràctica per eliminar caràcters no numèrics amb un sol clic


Elimineu els caràcters numèrics, alfabètics, no numèrics, no imprimibles o alfanumèrics de les cadenes de text:

amb Kutools for Excel's Elimina els caràcters utilitat, podeu eliminar ràpidament els caràcters numèrics, no numèrics, alfabètics o no alfabètics, i així successivament d'una llista de cadenes de text com necessiteu.

doc esborreu els caràcters no numèrics 6

Kutools for Excel: amb més complements Excel de 200, gratuïts per intentar sense limitacions en 60 dies. Baixada i prova gratuïta Ara!


Elimineu els caràcters no numèrics amb el codi VBA

Per eliminar caràcters no numèrics d'un rang amb codi VBA, feu el següent:

1. feu clic Revelador > Visual Basic per obrir el Microsoft Visual Basic per a aplicacions finestra. A la Microsoft Visual Basic per a aplicacions finestra, feu clic a Insereix > Mòduls, i després copieu i enganxeu els codis següents al mòdul:

VBA: elimina tots els caràcters no numèrics

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. A continuació, feu clic a la icona botó per executar el codi, en popping up KutoolsforExcel quadre de diàleg, seleccioneu un rang amb els caràcters no numèrics que voleu eliminar i, a continuació, feu clic a la icona OK botó Mostra la captura de pantalla:

doc esborreu els caràcters no numèrics de la còpia 1

3. A continuació, s'eliminen tots els caràcters no numèrics del rang seleccionat.

doc esborreu els caràcters no numèrics 2

Si els números amb punts decimals, podeu utilitzar el següent 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

Podeu veure els resultats a continuació mostra la pantalla següent:

doc esborreu els caràcters no numèrics 3


Una eina pràctica per eliminar caràcters no numèrics amb un sol clic

Per eliminar els caràcters no numèrics d'un rang, Kutools for Excel'S Elimina els caràcters La utilitat es pot fer amb un sol clic.

Kutools for Excel : amb més complements útils de 300 d'Excel, lliures per intentar sense limitacions en 60 dies.

Després d'instal·lar Kutools for Excel, feu el següent:

1. Ressalteu l'interval que voleu eliminar els caràcters no numèrics. Feu clic Kutools > Text > Elimina els caràcters.

doc esborreu els caràcters no numèrics 4

2. Al Elimina els caràcters quadre de diàleg, marqueu el No numèric opció en el Elimina els caràcters secció i, a continuació, feu clic a la icona OK or aplicar botó I els caràcters no numèrics s'eliminen de la selecció immediatament. Mostra la captura de pantalla:

doc esborreu els caràcters no numèrics 5

Feu clic per descarregar Kutools for Excel i prova gratuïta Ara!

Per obtenir informació més detallada sobre Elimina els caràcters de Kutools for Excel, visiteu Elimina la descripció de les característiques dels personatges.


Demostració: elimineu els caràcters numèrics, alfabètics, no imprimibles o alfanumèrics de les cel·les

Kutools for Excel: amb més complements Excel de 200, gratuïts per intentar sense limitacions en 60 dies. Baixada i prova gratuïta Ara!


Articles relacionats:



Eines de productivitat recomanades

Pestanya d'Office

estrella d'or1 Porteu les pestanyes pràctiques a l'Excel i a un altre programari d'Office, igual que Chrome, Firefox i el nou Internet Explorer.

Kutools for Excel

estrella d'or1 Increïble! Incrementeu la productivitat en 5 minuts. No necessites cap habilitat especial, estalvieu dues hores cada dia.

estrella d'or1 300 Noves característiques per a Excel, Excel molt fàcil i potent:

  • Combina cel·les / files / columnes sense perdre dades.
  • Combina i consolida diverses fulles i llibres.
  • Comparar intervals, copiar diversos rangs, convertir text a data, unitat i conversió de divises.
  • Compte per colors, subtotals de paginació, classificació avançada i filtre súper,
  • Més Seleccioneu / Insereix / Suprimeix / Text / Format / Enllaç / Comentari / Llibres / Eines de full de càlcul ...

Tret de pantalla de Kutools per a Excel

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 · 1 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 · 1 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 · 2 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 · 3 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 · 3 years ago
    Thanx Guys for such a nice work. The script is awesome and it worked for. Keep it up guys.