Note: The other languages of the website are Google-translated. Back to English
Logga in  \/ 
x
or
x
Registrera  \/ 
x

or

Excel-handledning – extrahera text eller nummer efter specifik position

I många fall behöver du kanske bara extrahera det användbara innehållet från en mening eller en textsträng i en cell, som att extrahera provinsen från adressen, extrahera e-postadressen från en mening, extrahera kurirfakturans nummer från en konversation, och så vidare. Denna handledning begränsar extraheringen till en specifik position i en cell och samlar olika metoder för att hjälpa till att extrahera text eller siffror från en cell efter specifik position i Excel.

Denna handledning täcker främst: (Klicka på valfri rubrik i innehållsförteckningen nedan eller till höger för att navigera till motsvarande innehåll.)


Extrahera text efter position

Det här avsnittet samlar gemensamma positioner där en text kan extraheras från en cell och tillhandahåller motsvarande metoder för att hantera dem steg för steg. Du kan bläddra för mer information.

1. Extrahera antalet tecken från vänster eller höger

För att extrahera antalet tecken från vänster eller höger sida av en sträng kan du prova någon av metoderna nedan.

1.1 Extrahera de första eller sista N tecknen med formler

Om du antar att du har en textsträngslista i kolumn B som visas i skärmdumpen nedan, för att extrahera de två första tecknen och de två sista tecknen från varje sträng, kan du använda följande formler.

Extrahera de första N tecknen från en textsträng

VÄNSTER-funktionen kan hjälpa till att enkelt extrahera de första N tecknen från en textsträng i Excel.

Generisk formel

=LEFT(text_string,[num_chars])

Argument

Textsträng: Textsträngen som innehåller tecknen du vill extrahera. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
Antal_tecken: Anger antalet tecken du vill extrahera.
Antalet tecken måste vara större än eller lika med noll;
Om de angivna Num_chars är större än längden på textsträngen, returnerar den hela texten;
Om Num_chars utelämnas antas det vara 1.

Nu kan du använda den här formeln för att extrahera de två första tecknen från celler i kolumn B.

1. Välj en tom cell, kopiera eller skriv in formeln nedan och tryck på ange nyckeln för att få det första resultatet. Markera resultatcellen och dra dess Autofyll-handtag nedåt för att tillämpa formeln på andra celler.

=LEFT(B5,2)

Nu har de två första tecknen i varje cell i området B2:B5 extraherats.

Extrahera de sista N tecknen från en textsträng

Här använder vi funktionen HÖGER för att extrahera de sista N tecknen från en textsträng i Excel.

Generisk formel

=RIGHT(text_string,[num_chars])

Argument

Textsträng: Textsträngen som innehåller tecknen du vill extrahera. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
Antal_tecken: Anger antalet tecken du vill extrahera.
Du har nu möjlighet Antal_tecken måste vara större än eller lika med noll;
Om den angivna Antal_tecken är större än längden på textsträngen, returnerar den hela texten;
Om Antal_tecken utelämnas, antas det vara 1.

Välj en tom cell, kopiera eller ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj sedan den här resultatcellen och dra dess Autofyll-handtag nedåt för att få andra resultat.

=RIGHT(B5,2)

1.2 Extrahera de första eller sista N tecknen med ett fantastiskt verktyg

Även om formlerna ovan är enkla, för att extrahera de första eller sista n tecknen från en lång lista med textsträngar, måste du fortfarande dra Autofyll-handtaget uppifrån och ned, vilket kanske tar lite tid. Här rekommenderar Kutools för ExcelÄr Extrahera text verktyg för att extrahera de första eller sista N tecknen från en lista med textsträngar i bulk.

1. Välj textsträngslistan du vill extrahera text från i förväg och klicka Kutools > text > Extrahera text.

2. I pop-up Extrahera text i dialogrutan måste du konfigurera enligt följande.

2.1) Se till att du bor i Extrahera efter plats flik;
2.2) I Mätområde rutan, det valda intervallet visas inuti, du kan byta till ett annat intervall enligt dina behov;
2.3) I Tillbehör avsnitt:
Om du vill extrahera de första N tecknen, välj Den första N-karaktären radioknappen och ange sedan antalet tecken du ska extrahera i textrutan. I det här fallet anger jag siffran 2;
Om du vill extrahera de sista N tecknen, välj Den sista N-karaktären radioknappen och ange sedan antalet tecken du ska extrahera i textrutan. I det här fallet vill jag extrahera de två sista tecknen från textsträngen, så jag anger siffran 2 i textrutan.
2.4) Klicka OK. Se skärmdump:

Anmärkningar: För att göra resultatet dynamiskt när textsträngen ändras kan du kontrollera Infoga som en formel låda.

3. I nästa poppar upp Extrahera text dialogrutan, välj en cell för att mata ut de extraherade tecknen och klicka sedan OK.

Sedan extraheras de angivna första eller sista N tecknen från valda celler i bulk.

Klicka för att veta mer om den här funktionen.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.


2. Extrahera text före eller efter ett visst tecken/ord

För att extrahera text före eller efter ett visst tecken eller ord kommer de olika scenarierna i det här avsnittet att möta dina behov.

2.1 Extrahera text före eller efter den första avgränsaren (ett tecken)

Som visas i skärmdumpen nedan, för att extrahera text före eller efter den första avgränsaren från varje cell i intervallet B4:B10, kan du använda en av metoderna nedan.

2.1.1 Extrahera text före den första avgränsaren med formel

Använd en formel baserad på funktionerna VÄNSTER och SÖK kan hjälpa till att extrahera text före den första avgränsaren från en cell. Du kan följa stegen nedan för att få det gjort.

Generisk formel

=LEFT(text_string,FIND("delimiter",text_string,1)-1)

Argument

Textsträng: Textsträngen som du vill extrahera delsträngen från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
avgränsare: Den första avgränsaren som definierar vilken text som kommer att extraheras från en cell.

Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckeln för att få det första resultatet. Välj den första resultatcellen och dra dess Autofyll-handtag nedåt för att få texterna före den första avgränsaren för andra celler.

=LEFT(B5,FIND("-",B5,1)-1)

2.1.2 Extrahera text efter den första avgränsaren med formel

Formeln nedan hjälper till att extrahera text efter den första avgränsaren från en cell i Excel.

Generisk formel

=MID(text_string,FIND("delimiter",text_string)+1,LEN(text_string))

Argument

Textsträng: Textsträngen som du vill extrahera delsträng från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
Avgränsare: Den första avgränsaren som definierar vilken text som kommer att extraheras från en cell.
Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckeln för att få det första resultatet. Välj den första resultatcellen och dra dess Autofyll-handtag nedåt för att få de andra resultaten.

=MID(B5,FIND("-",B5)+1,LEN(B5))

2.1.3 Extrahera text före eller efter den första avgränsaren med ett fantastiskt verktyg

Här rekommenderar starkt Extrahera text nytta av Kutools för Excel. Med den här funktionen kan du enkelt extrahera texter före eller efter den första avgränsaren från ett antal celler i bulk.

1. Välj cellintervallet där du vill extrahera texten och klicka sedan Kutools > text > Extrahera text.

2. I Extrahera text i dialogrutan måste du konfigurera enligt följande.

2.1) Stanna i Extrahera efter plats flik;
2.2) I Mätområde rutan, det valda intervallet visas inuti, du kan ändra det efter behov;
2.3) I Tillbehör avsnitt:
För att extrahera text före den första avgränsaren, välj före texten alternativknapp och skriv sedan den första avgränsaren i textrutan;
För att extrahera text efter den första avgränsaren, välj efter texten alternativknappen och skriv sedan in den första avgränsaren i textrutan.
2.4) Klicka OK.

Notera: För att göra resultatet dynamiskt när textsträngen ändras kan du markera rutan Infoga som formel.

3. Sedan en till Extrahera text dialogrutan dyker upp, välj en cell för att mata ut resultaten och klicka OK.

Sedan extraheras texter före eller efter den första avgränsaren från markerade celler på en gång.

För att veta mer om den här funktionen, besök: Extrahera snabbt viss text från celler i Excel.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.

2.2 Extrahera text före eller efter den sista avgränsaren (ett tecken)

I stegen ovan har vi lärt oss metoderna för att extrahera text före eller efter den första avgränsaren från en cell. Som visas i skärmdumpen nedan kommer det här avsnittet att visa dig två formler för att extrahera text före eller efter den sista avgränsaren från en cell. Du kan följa stegen nedan för att få det gjort.

2.2.1 Extrahera text före den sista avgränsaren med formel

För att extrahera text före den sista avgränsaren från en cell, kan du använda funktionerna SÖK, LÅNG och ERSÄTTNING inuti funktionen VÄNSTER.

Generisk formel

=LEFT(text_string,SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter",""))))-1)

Argument

Textsträng: Textsträngen som du vill extrahera delsträngen från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
Avgränsare: Den sista avgränsaren som definierar vilken text som kommer att extraheras från en cell.

Välj en cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Markera den här resultatcellen och dra dess Autofyll-handtag nedåt för att extrahera texterna från andra textsträngar i samma kolumn.

=LEFT(B5,SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-",""))))-1)

2.2.2 Extrahera text efter den sista avgränsaren med formel

Efter att ha extraherat text före den sista avgränsaren från en cell, kan du använda formeln nedan för att extrahera texten efter den sista avgränsaren som du behöver.

Generisk formel

=RIGHT(text_string,LEN(text_string)-SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter","")))))

Argument

Textsträng: Textsträngen som du vill extrahera delsträngen från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
Avgränsare: Den sista avgränsaren som definierar vilken text som kommer att extraheras från en cell.

Välj en cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Markera den här resultatcellen och dra dess Autofyll-handtag nedåt för att extrahera texterna från andra textsträngar i samma kolumn.

=RIGHT(B5,LEN(B5)-SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-","")))))

2.3 Extrahera text efter det n:te tecknet

Titta på exemplet nedan, det finns en lista med textsträngar i intervallet B4:B10, för att extrahera texten efter det tredje tecknet från varje cell kan du använda en formel baserad på MID-funktionen och LEN-funktionen.

Generisk formel

=MID(text_string,nth_char+1,LEN(text_string))

Argument

Textsträng: Textsträngen som du vill extrahera delsträngen från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
nth_char: En siffra representerar det n:te tecknet och du extraherar texten efter det.

Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra dess Autofyll-handtag nedåt för att få andra resultat.

=MID(B5,3+1,LEN(B5))

2.4 Extrahera det n:te ordet från en textsträng

Om du antar att du har en lista med textsträngar som visas i skärmdumpen nedan och bara vill extrahera det n:te ordet från textsträngen, ger det här avsnittet tre metoder för dig att få det gjort.

2.4.1 Extrahera det n:te ordet med formel

Du kan kombinera funktionerna TRIM, MID, SUBSTITUTE, REPT och LEN för att extrahera det n:te ordet från en textsträng i en cell.

Generisk formel

=TRIM(MID(SUBSTITUTE(text_string," ",REPT(" ",LEN((text_string))), (N-1)*LEN((text_string)+1, LEN((text_string)))

Argument

Textsträng: Textsträngen som du vill extrahera det n:e ordet från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
N: En siffra representerar det n:te ordet du extraherar från textsträngen.

I det här fallet innehåller intervallet B5:B10 textsträngarna, D5:D10 innehåller siffrorna som representerar det n:e ordet, låt oss använda den här formeln för att extrahera det n:te ordet från textsträngen.

Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckeln för att få det första resultatet. Välj den här resultatcellen och dra dess Autofyll-handtag nedåt för att få det n:te ordet i andra celler.

=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (D5-1)*LEN(B5)+1, LEN(B5)))

Notera: Du kan direkt skriva det n:te numret i formeln enligt följande.

=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (2-1)*LEN(B5)+1, LEN(B5)))

2.4.2 Extrahera det n:te ordet med användardefinierad funktion

Förutom formeln ovan kan du också använda en användardefinierad funktion för att extrahera det n:te ordet från en cell i Excel.

1. tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. I Microsoft Visual Basic för applikationer fönstret klickar Insert > Modul, och kopiera sedan VBA nedan till kodfönstret.

VBA-kod: Extrahera det n:te ordet från en textsträng i en cell

Funktion ExtractTheNthWord(Source As String, Position As Heltal) 'Update by Extendoffice 20211202 Dim arr() As String arr = VBA.Split(Source, " ") xCount = UBound(arr) If xCount < 1 Eller (Position - 1) > xCount Eller Position < 0 Then FindWord = "" Else FindWord = arr( Position - 1) End If End-funktion

3. tryck på andra + Q för att stänga Microsoft Visual Basic för applikationer fönster.

4. Gå tillbaka till kalkylbladet som innehåller textsträngarna som du vill extrahera det n:e ordet från. Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckel för att få det n:te ordet.

=FindWord(B5,D5)

Or

=FindWord(B5,2)

Notera: i formeln är D5 cellen som innehåller ett tal som representerar det n:te ordet. Alternativt kan du direkt ersätta cellreferensen med ett nummer.

5. Markera resultatcellen och dra dess Autofyll-handtag nedåt för att extrahera det n:e ordet från textsträngarna i andra celler.

2.4.3 Extrahera det n:te ordet med ett fantastiskt verktyg

Om du inte vill manuellt tillämpa en formel eller en användardefinierad funktion som tillhandahålls ovan, rekommenderar här Kutools för Excel's Extrahera det nionde ordet i cellen verktyg. Med den här funktionen kan du enkelt extrahera det n:te ordet från en textsträng i en cell med bara några få klick.

1. Välj en cell för att placera resultatet och klicka Kutools > Formel Helper > text > Utdrag det n:te ordet i cellen. Se skärmdump:

2. I Formlerhjälpare i dialogrutan måste du konfigurera enligt följande.

2.1) I Välj en formellista rutan, den Extrahera det nionde ordet i cellen alternativet är markerat;
2.2) I Cell rutan, välj en cell som innehåller textsträngen som du vill extrahera det n:te ordet från;
2.3) I Den nionde rutan, välj en cell som innehåller det n:te numret eller ange ett nummer direkt enligt dina behov;
2.4) Klicka OK.

3. Sedan extraheras det n:te (andra) ordet från textsträngen i cellen B5, och du kan se att en formel skapas samtidigt. Välj den här resultatcellen och dra dess Autofyll-handtag nedåt för att hämta det n:e ordet från andra textsträngar.

Klicka för att veta mer om den här funktionen.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.

2.5 Extrahera text före eller efter den n:e förekomsten av en avgränsare

Anta att du har en lista med textsträngar som visas i skärmdumpen nedan. För att extrahera texten före eller efter den andra förekomsten av ett mellanslag, tillhandahåller det här avsnittet två formler som hjälper dig att få det gjort.

2.5.1 Extrahera text före den n:e förekomsten av en avgränsare

Du kan använda funktionen VÄNSTER tillsammans med funktionerna ERSÄTTNING och SÖK för att extrahera text före den n:e förekomsten av en avgränsare från en cell i Excel.

Generisk formel

=LEFT(SUBSTITUTE(text_string,"delimiter",CHAR(9),n),FIND(CHAR(9),SUBSTITUTE(text_string,"delimiter",CHAR(9),n),1)-1)

Argument

Textsträng: Textsträngen som du vill extrahera texten från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
N: En siffra representerar den n:e förekomsten av en avgränsare som du kommer att extrahera text före den.

Välj en cell, kopiera eller skriv in formeln nedan och tryck på ange nyckeln för att få resultatet. Markera den här resultatcellen och dra den Autofyll handtaget nedåt för att få andra resultat i listan.

=LEFT(SUBSTITUTE(B5," ",CHAR(9),2),FIND(CHAR(9),SUBSTITUTE(B5," ",CHAR(9),2),1)-1)

Notera: I formeln är B5 cellen som innehåller textsträngen från vilken du vill extrahera texten; " " representerar här ett mellanslag och siffran 2 representerar den andra förekomsten av ett mellanslag. Du kan ändra dem efter dina behov.

2.5.2 Extrahera text efter den n:e förekomsten av en avgränsare

För att extrahera text efter den n:e förekomsten av en avgränsare kan du använda funktionen HÖGER med funktionerna ERSÄTTNING, LEN och SÖK.

Generisk formel

=RIGHT(SUBSTITUTE(text_string, "delimiter", CHAR(9), n), LEN(text_string)- FIND(CHAR(9), SUBSTITUTE(text_string, "delimiter", CHAR(9), n), 1) + 1)

Argument

Textsträng: Textsträngen som du vill extrahera texten från. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;
N: En siffra representerar den n:e förekomsten av en avgränsare som du extraherar text efter.

Nu kan du använda den här formeln för att extrahera texten efter den andra förekomsten av utrymmet från varje cell i intervallet B5:B10 enligt följande.

Välj en cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Markera den här resultatcellen och dra den AutoFyll-handtaget nedåt för att få andra resultat.

=RIGHT(SUBSTITUTE(B5, " ", CHAR(9), 2), LEN(B5)- FIND(CHAR(9), SUBSTITUTE(B5, " ", CHAR(9), 2), 1) + 1)

2.6 Extrahera text före eller efter radbrytning

Anta att du har en beställningslista i kolumn B och att du bara vill extrahera datumdelen och produktnummerdelen från varje cell. Du kan använda nedanstående Excel-formler för att få det gjort.

2.6.1 Extrahera text före första radbrytningen med formel

Som du kan se i skärmdumpen ovan, lokaliseras datumdelen före den första radbrytningen i cellen. Det här avsnittet kommer att demonstrera en VÄNSTER-funktion tillsammans med SÖK-funktionen för att hjälpa dig extrahera texten innan den första radbrytningen i en cell.

Generisk formel

=LEFT(cell, SEARCH(CHAR(10), cell)-1)

Argument

Cell: Cellen som du vill extrahera texten från innan den första radbrytningen.

Välj en tom cell, kopiera eller skriv in formeln nedan i den och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

=LEFT(B5, SEARCH(CHAR(10), B5)-1)

Sedan kan du se texten innan den första radbrytningen i varje cell i intervallet B5:B8 extraheras som visas i skärmdumpen nedan.

Notera: I formeln representerar CHAR(10) en radbrytning i Windows.

2.6.2 Extrahera text efter sista radbrytningen med formel

I föregående steg pratade vi om hur man extraherar text innan den första radbrytningen i en cell. Och den här delen kommer att guida dig hur du extraherar text efter den sista radbrytningen i en cell med en annan formel.

Generisk formel

=TRIM(RIGHT(SUBSTITUTE(cell,CHAR(10),REPT(" ",200)),200))

Argument

Cell: Cellen som du vill extrahera texten från innan den första radbrytningen.

Välj en tom cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Markera den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa formeln på andra celler.

=TRIM(RIGHT(SUBSTITUTE(B5,CHAR(10),REPT(" ",200)),200))

Då är produktnr. en del av varje cell i listan extraheras som visas i skärmdumpen ovan.

Notera: I formeln representerar CHAR(10) en radbrytning i Windows.

2.7 Extrahera text före eller efter ett ord

I de tidigare delarna har vi lärt oss hur man extraherar text före eller efter ett tecken eller avgränsare. Vad ska du göra för att extrahera text före eller efter ett helt ord? Det här avsnittet kommer att introducera tre metoder som hjälper dig att utföra denna uppgift.

2.7.1 Extrahera text före ett visst ord med formel

Följande formel hjälper dig att extrahera text före ett visst ord i en cell i Excel.

Generisk formel

=IFERROR(LEFT(cell,FIND(word,cell)-1),cell)

Argument

Cell: Cellen från vilken du vill extrahera texten före ett visst ord.
ord: Ordet du vill extrahera all text före det. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;

Välj en tom cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

I det här exemplet ska vi extrahera alla texter före ordet "Excel", så vi skriver ordet direkt i formeln och omger det med dubbla citattecken. Eller så kan du referera till en cell som innehåller ordet "Excel".

=IFERROR(LEFT(B5,FIND("Excel",B5)-1),B5)

Anmärkningar:

1) Denna formel är skiftlägeskänslig.
2) Om ordet du skrev in har dubbletter i samma cell, extraherar formeln bara texten efter den första förekomsten.

2.7.2 Extrahera text efter ett visst ord med formel

För att extrahera text efter ett visst ord kan du använda följande formel för att få det gjort.

Generisk formel

=TRIM(MID(cell,SEARCH(word,cell)+LEN(word),255))

Argument

Cell: Cellen från vilken du vill extrahera texten efter ett visst ord.
ord: Ordet du vill extrahera all text efter det. Det kan vara en cellreferens eller en verklig textsträng omsluten av dubbla citattecken;

Välj en cell, ange formeln nedan och tryck på ange nyckeln för att få resultatet. Markera resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa denna formel på andra celler.

=TRIM(MID(B5,SEARCH("Excel",B5)+LEN("Excel"),255))

Sedan kan du se alla texter efter att ordet "Excel" i varje cell har extraherats som visas i skärmdumpen nedan.

Anmärkningar:

1) Denna formel är skiftlägesokänslig.
2) Om ordet du skrev in har dubbletter i samma cell, extraherar formeln bara texten efter den första förekomsten.

2.7.3 Extrahera text före eller efter ett visst ord med ett fantastiskt verktyg

Om du känner att användning av formel kan orsaka mycket besvär, rekommenderar starkt här Extrahera text nytta av Kutools för Excel. Den här funktionen hjälper till att automatisera extraktionsuppgiften i Excel med bara några få klick.

1. klick Kutools > text > Extrahera text för att aktivera den här funktionen.

2. I Extrahera text gör följande inställningar.

2.1) Se till att du är i Extrahera efter plats flik;
2.2) I Mätområde rutan, klicka på knappen för att välja intervallet av celler där du vill extrahera text;
2.3) I Tillbehör avsnitt:
För att extrahera alla texter före ett ord, välj före texten radioknapp och skriv sedan in ordet i textrutan;
För att extrahera alla texter efter ett ord, välj efter texten radioknappen och skriv sedan in ordet i textrutan.
2.4) Klicka på OK knapp. Se skärmdump:

Anmärkningar: Om du vill skapa dynamiska resultat, markera Infoga som en formel låda. Då kommer resultaten automatiskt att uppdateras när data i intervallet ändras.

3. Sedan en Extrahera text dialogrutan dyker upp, måste du välja en cell för att mata ut resultatet och sedan klicka på OK knapp.

Sedan extraheras texter före eller efter ett visst ord inom varje cell i det valda intervallet omedelbart.

Notera: Den här funktionen är skiftlägeskänslig.

Klicka för att veta mer om den här funktionen.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.


3. Extrahera mellan tecken/ord

Om du vill extrahera text mellan vissa tecken eller ord, prova följande metoder.

3.1 Extrahera text mellan två tecken

För att extrahera text mellan två tecken, som kan vara samma eller olika tecken. Det här avsnittet innehåller flera metoder, och du kan välja en av dem efter dina behov.

3.1.1 Extrahera text mellan två samma tecken med formel

Som visas i skärmdumpen nedan, det finns en lista med textsträngar i kolumn B, och du vill extrahera nummerdelen mellan tecknen "/" från varje cell i intervallet, följande formel kan göra dig en tjänst.

Välj en tom cell, kopiera eller ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj resultatcellen och dra den sedan AutoFyll-handtaget nedåt för att få resultat från andra celler i listan.

=SUBSTITUTE(MID(SUBSTITUTE("/" & B5&REPT(" ",6),"/",REPT(",",255)),2*255,255),",","")

Sedan extraheras texten mellan två samma tecken "/" från varje cell i intervallet. Se skärmdump:

Notera:

1) B5 är cellen som du vill extrahera text mellan två samma tecken från;
2) "/” är två samma tecken som du vill extrahera text mellan dem.
Du måste ändra dessa variabler baserat på dina egna data.

3.1.2 Extrahera text mellan två olika tecken med formel

Efter att ha lärt oss hur man extraherar text mellan två samma tecken i en cell, kommer vi här att demonstrera en formel för att extrahera text mellan två olika tecken. Som visas i skärmdumpen nedan, för att bara extrahera e-postadressen mellan "<" och ">" från varje cell i kolumn B, kan du göra enligt följande.

Generisk formel

=MID(LEFT(cel,FIND("end_char",cell)-1),FIND("start_char",cell)+1,LEN(cell))

Argument

Cell: Cellen från vilken du vill extrahera texten mellan två olika tecken;
End_char: Slutkaraktären för de två olika karaktärerna;
Start_char: Startkaraktären för de två olika karaktärerna.

Välj en tom cell, kopiera eller ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

=MID(LEFT(B5,FIND(">",B5)-1),FIND("<",B5)+1,LEN(B5))

Du kan se att endast texten mellan de angivna tecknen extraheras som visas i skärmdumpen ovan.

3.1.3 Extrahera text mellan två tecken med ett fantastiskt verktyg

Här rekommenderar starkt Extrahera strängar mellan angiven text egenskap av Kutools för Excel för att hjälpa dig att enkelt extrahera text mellan två samma eller olika tecken i en cell i Excel.

1. Välj en tom cell för att mata ut resultatet och klicka sedan på Kutools > Formel Helper > Formel Helper.

2. I Formlerhjälpare gör följande inställningar.

2.1) Kontrollera Filter rutan och skriv sedan in ordet "Extrahera" i textrutan;
2.2) I Välj en formellista rutan, klicka på Extrahera strängar mellan angiven text alternativ;
2.3) I Argumentinmatning avsnitt:
i Cell rutan, välj en cell där du vill extrahera texten (här väljer jag cell B5);
i Starta char (s) rutan, ange starttecknet för de två olika tecknen;
i Slutet char(s) box, ange sluttecknet för de två olika tecknen.
2.4) Klicka Ok. Se skärmdump:

3. Då extraheras bara texten mellan "<" och ">" i cell B5. Under tiden har en formel skapats, du kan markera den här resultatcellen och sedan dra dess Autofyll-handtag nedåt för att extrahera texter från andra celler i samma lista.

Klicka för att veta mer om den här funktionen.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.

3.1.4 Extrahera text mellan två tecken (inklusive tecknen) genom regel

Om du vill behålla de två tecknen efter extrahering, försök att tillämpa en regel i funktionen Extrahera text i Kutools för Excel.

1. klick Kutools > text > Extrahera text.

2. I Extrahera text gör följande inställningar.

2.1) Klicka på Extrahera enligt regel flik;
2.2) I Mätområde avsnittet, klicka på knappen för att välja intervallet av celler där du vill extrahera texten mellan tecken;
2.3) I text rutan, skriv in <*>;
Tips: "<"Och">” är de tecken du vill extrahera text mellan dem, * är ett jokertecken som representerar valfritt antal tecken. Du kan ange villkoret efter dina behov.
2.4) Klicka på Lägg till knappen för att lägga till villkoret till Regelbeskrivning listruta;
2.5) Klicka på Ok knapp. Se skärmdump:

3. En annan Extrahera text dialogrutan dyker upp, välj en cell för att mata ut resultatet och klicka sedan på OK knapp.

Sedan extraheras texten mellan specificerade tecken (inklusive tecknen) från varje cell i det valda intervallet i bulk.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.

3.2 Extrahera text mellan två ord

Förutom att extrahera text mellan två tecken, kan du också behöva extrahera text mellan två ord. Extrahera till exempel alla textsträngar mellan två ord "KTE" och "funktion" från varje cell i kolumn B som visas i skärmdumpen nedan. Du kan prova någon av följande metoder för att få det gjort.

3.2.1 Extrahera text mellan två ord med formel

Du kan använda en formel baserad på MID-funktionen och SEARCH-funktionen för att extrahera alla textsträngar mellan två ord i en cell.

Generisk formel

=MID(cell,SEARCH("start_word",cell)+3,SEARCH("end_word",cell)-SEARCH("start_word",cell)-4)

Argument

Cell: cellen från vilken du vill extrahera alla textsträngar mellan två ord;
Start_word: startordet för de två ord du vill extrahera alla textsträngar efter det;
Längd 1: teckenlängden på startordet.
Slutord: slutordet av de två ord du vill extrahera alla textsträngar före det.
Längd 2: teckenlängden på startordet plus 1.

Välj en tom cell, kopiera eller ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

=MID(B5,SEARCH("KTE",B5)+3,SEARCH("feature",B5)-SEARCH("KTE",B5)-4)

Anmärkningar: I formeln representerar siffran 3 teckenlängden för ordet "KTE"; siffran 4 representerar teckenlängden för ordet "KTE" plus 1.

Du kan se att alla textsträngar mellan de angivna två orden extraheras från varje cell i kolumn B.

3.2.2 Extrahera text mellan två ord med ett fantastiskt verktyg

För många Excel-användare kan formler vara svåra att komma ihåg och hantera. Här, med Extrahera strängar mellan angiven text egenskap av Kutools för Excel, kan du enkelt extrahera text mellan två ord med bara några klick.

1. Välj en cell för att mata ut resultatet och klicka sedan Kutools > Formel Helper > Formel Helper.

2. I Formel Helper i dialogrutan måste du konfigurera enligt följande.

2.1) Kontrollera Filter rutan och skriv sedan in ordet "Extrahera" i textrutan;
2.2) I Välj en formellista rutan, klicka på Extrahera strängar mellan angiven text alternativ;
2.3) I Argumentinmatning avsnitt:
i Cell rutan, välj en cell där du vill extrahera texten (här väljer jag cell B5);
i Starta char (s) rutan, skriv in startordet för de två ord du vill extrahera alla textsträngar efter det;
i Sluttecken rutan, skriv in slutordet av de två ord du vill extrahera alla textsträngar före det.
2.4) Klicka Ok. Se skärmdump:

3. Sedan extraheras alla textsträngar mellan två ord "KTE" och "funktion" i cellen B5. Under tiden har en formel skapats, du kan markera den här resultatcellen och sedan dra dess Autofyll-handtag nedåt för att extrahera texter från andra celler i samma lista.

  Om du vill ha en gratis provperiod (30 dagar) på detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.


Extrahera siffror efter position

För en lista över alfanumeriska strängar kan det finnas tre fall:

  1. Numret står i början av texten;
  2. Numret finns i slutet av texten;
  3. Numret kan finnas var som helst i texten.

I det här avsnittet kommer vi att tillhandahålla olika metoder som kan användas för att extrahera siffrorna i varje fall som nämnts ovan.

1 Extrahera nummer från vänster om en sträng

Den här delen introducerar en formel som hjälper dig att bara extrahera siffror som visas före text i en cell.

Generisk formel

=LEFT(cell, MATCH(FALSE, ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell)+1)), 1) *1), 0) -1)

Argument

Cell: Cellen som du vill extrahera nummer från till vänster om textsträngen.

Notera:

1) Om du använder Excel 2019 och tidigare måste du trycka på ctrl + shift + ange för att bekräfta denna matrisformel.
2) Om du använder Excel 365 eller Excel 2021, bekräfta bara denna formel med ange nyckel.

Välj en tom cell, ange formeln nedan och tryck ctrl + shift + ange or ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att få antal andra celler.

=LEFT(B5, MATCH(FALSE, ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5)+1)), 1) *1), 0) -1)

Anmärkningar:

1) Om en cell bara innehåller siffror kommer hela talet att extraheras.
2) Denna formel extraherar endast siffrorna till vänster om en textsträng. Om siffror finns i mitten eller i slutet av textsträngen kommer de att ignoreras.

2 Extrahera nummer från höger om en sträng

Som visas i skärmdumpen nedan, för att extrahera endast siffrorna som visas efter text i en cell, prova följande formel.

Generisk formel

=RIGHT(cell, LEN(cell) - MAX(IF(ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(cell))), 0)))

Argument

Cell: Cellen från vilken du vill extrahera nummer från början av textsträngen.

Notera:

1) Om du använder Excel 2019 och tidigare måste du trycka på ctrl + shift + ange för att bekräfta denna matrisformel.
2) Om du använder Excel 365 eller Excel 2021, bekräfta bara denna formel med Enter-tangenten.

Välj en tom cell, ange formeln nedan och tryck ctrl + shift + ange or ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att få antal andra celler.

=RIGHT(B5, LEN(B5) - MAX(IF(ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(B5))), 0)))

Anmärkningar:

1) Om en cell bara innehåller siffror kommer hela talet att extraheras.
2) Denna formel extraherar endast siffrorna från höger om en textsträng. Om siffror finns i mitten eller början av textsträngen kommer de att ignoreras.

3. Extrahera alla nummer från valfri position i en textsträng

Metoderna ovan hjälper till att extrahera nummer endast från vänster eller höger om en textsträng. Om du vill extrahera alla siffror var som helst i en textsträng erbjuder vi här tre metoder för att få det gjort.

3.1 Extrahera alla tal var som helst i en sträng med formel

Du kan använda följande formel för att extrahera alla siffror var som helst i en textsträng i Excel.

1. Välj en tom cell, kopiera eller skriv in formeln nedan och tryck på ange för att få alla siffror från cellen B5.

=SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(--MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1)) * ROW(INDIRECT("1:"&LEN(B5))), 0), ROW(INDIRECT("1:"&LEN(B5))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(B5)))/10)

2. Välj resultatcellen och dra sedan dess Autofyll-handtag nedåt för att få alla antal andra celler.

3.2 Extrahera alla nummer var som helst i en sträng med VBA

Formeln ovan är för lång och komplicerad för många Excel-användare. Du kan faktiskt köra ett VBA-skript för att automatisera uppgiften i Excel. Du kan göra enligt följande.

1. tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. I öppningen Microsoft Visual Basic för applikationer fönstret klickar Insert > Modul. Kopiera sedan VBA nedan till modulkodfönstret.

VBA-kod: Extrahera alla nummer var som helst i en textsträng

Sub ExtrNumbersFromRange() 'Uppdaterad av Extendoffice 20220106 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.InputleasBox :", xTitleId, "", Typ:=8) If TypeName(xDRg) = "Ingenting" Then Exit Sub Set xRRg = Application.InputBox("Välj utdatacell:", xTitleId, "", Typ:=8) Om Typnamn(xRRg) = "Ingenting" Avsluta Sub xI = 0 strNumber = "" För varje xRg In xDRg xI = xI + 1 nCellLength = Len(xRg) För xNumber = 1 Till nCellLength If IsNumeric(Mid(xRg, xNumber, 1)) Sedan strNumber = strNumber & Mid(xRg, xNumber, 1) End If Next xNumber xRRg.Item(xI) = strNumber strNumber = "" Nästa xRg End Sub

3. tryck på F5 för att köra koden. I öppningen KutoolsforExcel i dialogrutan väljer du cellintervallet där du vill extrahera alla siffror från varje cell och klickar sedan på OK knapp.

4. Sedan en till KutoolsforExcel dialogrutan dyker upp. I den här dialogrutan väljer du en målcell och klickar OK.

Sedan extraheras alla nummer från varje cell i det valda intervallet i bulk.


4. Extrahera siffror efter specifik text

Som visas i skärmdumpen nedan, för att extrahera siffror efter den specifika texten "Nej", ger det här avsnittet två metoder som hjälper dig att få det gjort.

4.1 Extrahera siffror efter en specifik text med formel

Du kan använda följande formel för att extrahera siffror efter en specifik text i en cell i Excel.

Generisk formel:

=LOOKUP(10^6,1*MID(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789",FIND("text"," "&cell&" "))),{2,3,4,5,6}))

Argument

Cell: Cellen från vilken du vill extrahera siffror efter en specifik text;
Text: Texten du vill extrahera siffror efter den.

Välj en tom cell, kopiera eller ange formeln nedan och tryck på ange nyckeln för att få resultatet. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

=LOOKUP(10^6,1*MID(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789",FIND("No."," "&B5&" "))),{2,3,4,5,6}))

Anmärkningar:

1) Om en cell inte innehåller den specifika texten kommer formeln att returnera #N/A.
2) Formeln är skiftlägeskänslig.

4.2 Extrahera siffror efter en specifik text med användardefinierad funktion

Följande användardefinierade funktion kan också hjälpa till att extrahera siffror efter en specifik text i en cell. Vänligen gör enligt följande.

1. tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. I Microsoft Visual Basic för applikationer fönstret klickar Insert > Modul, och kopiera sedan VBA-koden nedan till modulkodfönstret.

VBA-kod: extrahera siffror efter en specifik text i en cell

Funktion GetNumberAfterTheChar(Rng As Range, Char As String) 'Uppdaterad av Extendoffice 20220106 Dim xValue As String Dim xRntString As String Dim xStart As Integer Dim xC xValue = Rng.Text xStart = InStr(1, xValue, Char, vbTextCompare) If IsEmpty(xStart) Then Get FunNumberAfterTheChar = "IxitExit" Sedan GetNumberAfterTheChar = "" Avsluta funktionsslut Om xStart = xStart - 1 + Len(Char) If xStart < 1 Then GetNumberAfterTheChar = "" Avsluta funktionsslut Om xValue = Mid(xValue, xStart + 1) xRntString = "" För xI = 1 Till Len(xValue) xC = Mid(xValue, xI, 1) Välj Case Asc(xC) Case 1 To 48 xRntString = xRntString & xC Case Else Exit For End Välj Next GetNumberAfterTheChar = xRntString End Function

3. tryck på andra + Q för att stänga Microsoft Visual Basic för applikationer fönster.

4. Välj en cell, ange formeln nedan och tryck på ange nyckel. Välj den här resultatcellen och dra sedan dess Autofyll-handtag nedåt för att tillämpa den här formeln på andra celler.

=GetNumberAfterTheChar(B5,"No. ")

Anmärkningar:

1) I den här formeln är B5 cellen där du vill extrahera numret, och "Nr. ” är den specifika text som du vill extrahera numret efter. Du kan ändra dem efter behov.
2) Om det finns en avgränsare mellan den specifika texten och numret, lägg till avgränsaren i slutet av texten. I det här fallet lade jag till ett mellanslag efter texten "Nej", som slutligen visas som "Nej. ”.
3) Denna metod är skiftlägesokänslig;
4) Om en cell inte innehåller den specifika texten kommer formeln att returnera ett tomt resultat.

Relaterade artiklar:

Excel-handledning: Dela text-, nummer- och datumceller (dela upp i flera kolumner)
Denna handledning är uppdelad i tre delar: delade textceller, delade nummerceller och delade datumceller. Varje del ger olika exempel för att hjälpa dig veta hur du ska hantera klyvningsjobbet när du stöter på samma problem.
Klicka för att veta mer ...

Excel Lägg till text och nummer i specificerad position i cellen
I Excel är det mycket vanligt att lägga till texter eller siffror i celler. Som att lägga till mellanslag mellan namn, lägga till prefix eller suffix i celler, lägga till bindestreck till sociala nummer. Här i den här handledningen listar den nästan alla tilläggsscenarier i Excel och ger dig motsvarande metoder.
Klicka för att veta mer ...

Excel Ta bort tecken, ord, siffror från textsträngar
Om du antar att du har en lång lista med textsträngar som innehåller tecken, siffror eller andra specifika symboler. I vissa fall kan du behöva ta bort vissa tecken baserat på position, till exempel från höger, vänster eller mitten från textsträngarna, eller ta bort några oönskade tecken, siffror från listan med strängar. Att hitta lösningarna en efter en kommer att få huvudvärk, den här handledningen samlar alla typer av metoder för att ta bort tecken, ord eller siffror i Excel.
Klicka för att veta mer ...


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2019 och 365. Stöder alla språk. Enkel distribution i ditt företag eller organisation. Fullständiga funktioner 30-dagars gratis provperiod. 60-dagars pengarna tillbaka-garanti.
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!
officetab botten
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.