Hoppa till huvudinnehåll

Hur extraherar jag det sista numret från textsträngen i Excel?

Om du antar att du har en lista med textsträngar som blandas med texter och siffror, nu måste du extrahera den sista uppsättningen siffror som följande skärmdump visas. Hur kunde du hantera det här jobbet i Excel?

Extrahera sista siffror från textsträngar med VBA-kod


Extrahera sista siffror från textsträngar med VBA-kod

För att snabbt extrahera den sista siffran från textsträngar kan du använda följande VBA-kod. Gör så här:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulerna, kopiera och klistra sedan in följande kod i Modulerna Fönster.

VBA-kod: Extrahera sista siffror från textsträngar:

Sub GetLastDigits()
'Updateby Extendoffice
    Dim xRg As Range
    Dim xCell As Range
    Dim xRegEx As Object
    Dim xRetList As Object
    Dim xAddress As String
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the range:", "Kutools for Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
       MsgBox "Only one column can be available", vbInformation, "Kutools for Excel"
       Exit Sub
    End If
    Set xRegEx = CreateObject("VBSCRIPT.REGEXP")
    With xRegEx
        .MultiLine = False
        .Global = True
        .IgnoreCase = True
        .Pattern = "(\d+)"
    End With
    For Each xCell In xRg
        Set xRetList = xRegEx.Execute(xCell.Value)
        If xRetList.Count > 0 Then
            If Left(xRetList(xRetList.Count - 1), 1) = 0 Then
                xCell.Offset(0, 1) = Right(xRetList(xRetList.Count - 1), Len(xRetList(xRetList.Count - 1)) - 1)
            Else
                xCell.Offset(0, 1) = xRetList(xRetList.Count - 1)
            End If
        End If
    Next
End Sub

3. Tryck sedan på F5 nyckel för att köra den här koden och en snabbruta visas för att påminna dig om att välja det dataområde du vill använda, se skärmdump:

4. Och klicka sedan på OK knappen, och den sista uppsättningen siffror har extraherats från varje textsträng till de intilliggande kolumncellerna, se skärmdump:

Bästa kontorsproduktivitetsverktyg

Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50 + Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

kte-flik 201905


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
Comments (4)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
this code pulled the first set of numbers if no numbers were at the end of the cell.
if numbers were at the end of a cell, these numbers were pulled.
this code half way worked but
This comment was minimized by the moderator on the site
I'm sure it will be possible.
This comment was minimized by the moderator on the site
how do that without using vba?
This comment was minimized by the moderator on the site
Hi,
Sorry, maybe there is no other direct method for getting the result. If anyone have the solution, please comment here.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations