Hvordan trekke ut tall bare fra tekststreng i Excel?
Har du noen gang ønsket å trekke ut tall bare fra en liste med strenger i Excel? Her introduserer jeg noen måter for deg å trekke ut bare tall raskt og enkelt i Excel.
Metode 1: Trekk ut tall bare fra tekststrenger med formel
Metode 2: Trekk ut nummer kun fra tekststrenger med VBA-kode
Metode 3: Trekk ut nummer bare fra tekststreng med Kutools for Excel
Metode 4: Trekk ut desimaltall bare fra tekststreng med formel
Metode 1: Trekk ut tall bare fra tekststrenger med formel
Følgende lange formel kan hjelpe deg å trekke ut bare tallene fra tekststrengene, vennligst gjør som dette:
Velg en tom celle der du vil skrive ut det utpakkede tallet, og skriv deretter inn denne formelen: =SUMPRODUKT(MIDDEL(0&A5, STOR(INDEKS(ERNUMMER(--MIDDEL(A5, RAD(INDIREKTE("1:"&LENGE(A5))), 1)) * RAD(INDIREKTE("1:"&LEN(A5) )), 0), ROW(INDIRECT("1:"&LEN(A5))))+1, 1) * 10^RAD(INDIREKTE("1:"&LEN(A5)))/10), og dra deretter fyllhåndtaket for å fylle området du trenger for å bruke denne formelen. Se skjermbilde:
Merknader:
- 1. A5 står de første dataene du vil trekke ut tall kun fra listen.
- 2. Resultatet vil vises som 0 når det ikke er tall i strengen.
Trekk ut tall bare fra tekststrenger:
Med Kutools for Excel'S UTTREKKSNUMMER funksjon, kan du raskt trekke ut bare tall fra tekststrengcellene. Klikk for å laste ned Kutools for Excel!
Metode 2: Trekk ut nummer kun fra tekststrenger med VBA-kode
Her er en VBA-kode som også kan gjøre deg en tjeneste, vennligst gjør som følger:
1. Hold nede Alt + F11 nøkler for å åpne Microsoft Visual Basic for Applications vinduet.
2. Klikk innfelt > Moduler, og lim inn følgende kode i Moduler Vindu.
VBA-kode: Trekk ut nummer kun fra tekststreng:
Sub ExtrNumbersFromRange()
Dim xRg As Range
Dim xDRg As Range
Dim xRRg As Range
Dim nCellLength As Integer
Dim xNumber As Integer
Dim strNumber As String
Dim xTitleId As String
Dim xI As Integer
xTitleId = "KutoolsforExcel"
Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8)
If TypeName(xDRg) = "Nothing" Then Exit Sub
Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8)
If TypeName(xRRg) = "Nothing" Then Exit Sub
xI = 0
strNumber = ""
For Each xRg In xDRg
xI = xI + 1
nCellLength = Len(xRg)
For xNumber = 1 To nCellLength
If IsNumeric(Mid(xRg, xNumber, 1)) Then
strNumber = strNumber & Mid(xRg, xNumber, 1)
End If
Next xNumber
xRRg.Item(xI) = strNumber
strNumber = ""
Next xRg
End Sub
3. Og trykk deretter F5 tasten for å kjøre denne koden, og en ledetekst vises for å minne om å velge tekstområdet du vil bruke, se skjermbilde:
4. Deretter klikker du OK, en annen meldingsboks følger, velg en celle for å sende ut resultatet, se skjermbilde:
5. Endelig, klikk OK -knappen, og alle tallene i de valgte cellene er trukket ut samtidig.
Metode 3: Trekk ut nummer bare fra tekststreng med Kutools for Excel
Kutools for Excel har også en kraftig funksjon som kalles UTTREKKSNUMMER, med denne funksjonen kan du raskt trekke ut bare tallene fra de originale tekststrengene.
Kutools for Excel : med mer enn 300 praktiske Excel-tillegg, gratis å prøve uten begrensning på 30 dager. |
Etter å ha installert Kutools for Excel, vennligst gjør som følger:
1. Klikk på en celle ved siden av tekststrengen din der du vil plassere resultatet, se skjermbilde:
2. Klikk deretter Kutools > Kutools funksjoner > tekst > UTTREKKSNUMMER, se skjermbilde:
3. på Funksjonsargumenter dialogboksen, velg en celle som du vil trekke ut tallene fra Tekst tekstboks, og skriv deretter inn sant or falsk inn N tekstboks, se skjermbilde:
Merknader: argumentet N er et valgfritt element, hvis du går inn sant, vil den returnere tallene som numeriske, hvis du taster inn falsk, vil den returnere tallene som tekstformat, standarden er falsk, så du kan la den stå tom.
4. Og klikk deretter OK, tallene er trukket ut fra den valgte cellen, dra deretter fyllhåndtaket ned til cellene du vil bruke denne funksjonen, du får følgende resultat:
Klikk for å laste ned og gratis prøveversjon av Kutools for Excel nå!
Metode 4: Trekk ut desimaltall bare fra tekststreng med formel
Hvis tekststrengene som inkluderer noen desimaltall i regnearket, hvordan kan du trekke ut bare desimaltallene fra tekststrengene?
Formelen nedenfor kan hjelpe deg med å trekke ut desimaltallene fra tekststrengene raskt og enkelt.
Skriv inn denne formelen:=LOOKUP(9.9E+307,--LEFT(MID(A5,MIN(FIND({1,2,3,4,5,6,7,8,9,0}, $A5&"1023456789")),999),ROW(INDIRECT("1:999")))),og fyll deretter håndtaket ned til cellene som du vil inneholde denne formelen, alle desimaltallene er trukket ut fra tekststrengene, se skjermbilde:
Trekk ut nummer bare fra strenger med Kutools for Excel
Relative artikler:
Beste kontorproduktivitetsverktøy
Utvid Excel-ferdighetene dine med Kutools for Excel, og opplev effektivitet som aldri før. Kutools for Excel tilbyr over 300 avanserte funksjoner for å øke produktiviteten og spare tid. Klikk her for å få funksjonen du trenger mest...
Office Tab bringer fanebasert grensesnitt til Office, og gjør arbeidet ditt mye enklere
- Aktiver faneredigering og lesing i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åpne og opprett flere dokumenter i nye faner i samme vindu, i stedet for i nye vinduer.
- Øker produktiviteten din med 50 %, og reduserer hundrevis av museklikk for deg hver dag!