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

or

Hur hittar jag positionen för första / sista numret i en textsträng i Excel?

Till exempel har du en lista med textsträngar som är en blandning av bokstäver och siffror. Om du vill hitta positionen för det första eller sista numret i varje sträng, vad skulle du göra? Med hjälp av formeln kan du faktiskt snabbt hitta positionen för första / sista numret i en angiven textsträng. I den här handledningen visar vi detaljerna i hur du hanterar detta problem.

Hitta position för det första numret i textsträngen i Excel
Hitta position för det sista numret i textsträng i Excel


Hitta position för det första numret i textsträngen i Excel


Som nedanstående skärmdump visas för att hitta positioner för första siffror i textsträngarna så här.

1. Markera cellen B2, kopiera och klistra in en av nedanstående formler i formelfältet:

1). Formel 1: = MIN (SÖK ({0,1,2,3,4,5,6,7,8,9}, A2 och "0123456789"));

2). Formel 2: =MATCH(TRUE,ABS(CODE(MID(A2,ROW($A$1:INDEX(A:A,LEN(A2))),1))-52.5)<5,0) + ctrl + shift + ange;

3). Formel 3: =MIN(IF(ISERROR(FIND({1;2;3;4;5;6;7;8;9;0},A2)),"",FIND({1;2;3;4;5;6;7;8;9;0},A2))).

2. Då visas den första siffrans position för den första strängen i cellen B2. Dra nu Fill Handle ned till cell B7 för att fylla nedanstående intervall.

Sedan listas alla första nummerpositioner för hela strängarna.


Hitta position för det sista numret i textsträng i Excel

Efter att ha hittat positionen för det första numret börjar vi nu hitta positionen för det senaste numret i strängar.

I det här avsnittet finns det två formler för dig.

Formel 1: = MAX (OM (ISNUMBER (VÄRDE (MID (A2, RAD (INDIRECT ("1:" & LEN (A2))), 1)), ROW (INDIRECT ("1:" & LEN (A2)))) ) + ctrl + shift + ange;

Formel 2: =MAX(IFERROR(FIND({1,2,3,4,5,6,7,8,9,0},A2,ROW(INDIRECT("1:"&LEN(A2)))),0)) + ctrl + shift + ange

1. Välj cell B2, kopiera och klistra in en av ovanstående formler i formelfältet och tryck sedan på Ctrl + Skift + Enter-tangenterna samtidigt. Då kan du se resultatet visas i B2.

2. Välj B2, dra ner Fill Handle till cell B7 för att automatiskt fylla området.

Då får du positioner för alla sista siffror i hela textsträngen omedelbart.


Separera enkelt text och nummer från en cell i två kolumner i Excel:

Med Kutools för ExcelÄr Dela celler verktyget kan du dela ett cellområde i rader eller kolumner med specifik separator, dela text och nummer eller dela text efter certianlängd. Ladda ner och prova nu! (30-dagars gratis spår)


Relaterade artiklar:


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 åt 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.
  • To post as a guest, your comment is unpublished.
    Mehidy Hassan · 2 months ago
    @George Many Thanks , Great
  • To post as a guest, your comment is unpublished.
    madgrappler · 1 years ago
    Thought I would let everyone know that I needed to find the last position of the house numbers in an address field in access. The only way I could do this was to export a short query to excel and run this formula. I know there is a way to get the excel functions in access but this was much easier. I had addresses that had varying house number lengths and then you throw in the 1st, 2nd, 3rd...St., Ave into the mix within the street name and you got a major problem parsing a very bad formatted address string.

    address examples 1234 nw (or NW) 4th St.
    12 West St North (or N)
    123,456, and 789 Heritage Circle (or Crc)
    123 & 456 N 1st. St

    I figured out a way to parse off the first and second example real quick with some research (I would give credit, but right now I can't remember where I got the answer). It involved creating a VBA function to accomplish it. That worked great but I came to a problem when we come to the first "," or "and" or "&".

    Using this formula in excel found the last number I needed without choosing the street number. Since most house numbers ended with a space " " between them and the direction segment or the street name segment, I added --- &" " after the find formula. Like this: in an array formula
    =MAX(IFERROR(FIND({1,2,3,4,5,6,7,8,9,0}&" ",E2,ROW(INDIRECT("1:"&LEN(E2)))),0))
    A quick export back to an access table and wala! you have the number.
    202 & 206 N Blanche Ave = 9

    Now I know I could probably parse the rest of the address in excel but it actually worked real well in Access, so I just decided to do the rest there.

    If there is a way to do it all in Access, I couldn't find it or figure it out.
  • To post as a guest, your comment is unpublished.
    Borja · 2 years ago
    goood, thanks
  • To post as a guest, your comment is unpublished.
    crystal · 2 years ago
    @Guess You are welcome O(∩_∩)O
  • To post as a guest, your comment is unpublished.
    Guess · 2 years ago
    That's what I needed =MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"));

    thank you very much!
  • To post as a guest, your comment is unpublished.
    Wajid · 2 years ago
    @Jon Adams Hats off mate..
  • To post as a guest, your comment is unpublished.
    crystal · 2 years ago
    @Francis Hi,
    Sorry can't help with this.
  • To post as a guest, your comment is unpublished.
    Francis · 2 years ago
    how to get this to work in powerpivot
  • To post as a guest, your comment is unpublished.
    Datta · 4 years ago
    @George Hi George,

    your formula is may meet my requirement.

    I need similar formula to find out digit position in the string listed in "A" row in B row

    Required output
    8
    5
    1
    4
    3
    1 3
    2
    5 5
    6
    6 1
    7
    9
    9 1
    1 6
    0
    9 3
    0 2
    7 4
    9 3
    6 5
    5 7
    4 9
    8 10
    2 10
    0 8
    1 9
  • To post as a guest, your comment is unpublished.
    LanaMadAboutExcel · 4 years ago
    .... and here I thought that I knew Excel well. Bravo!!!!!
  • To post as a guest, your comment is unpublished.
    George · 4 years ago
    And here is a formula for finding the position of the last numeric character in a string, but WITHOUT using an array formula:

    =MAX(SEARCH(CHAR(9),SUBSTITUTE("0123456789"&A1,{0,1,2,3,4,5,6,7,8,9},CHAR(9),LEN(A1)+10-LEN(SUBSTITUTE("0123456789"&A1,{0,1,2,3,4,5,6,7,8,9},"")))))-10

    The number 10 appearing in this formula, are due to the length of the constant string "0123456789", that is concatenated in this formula.
  • To post as a guest, your comment is unpublished.
    Ashabel · 4 years ago
    This was exactly what I wanted. Thank you.
  • To post as a guest, your comment is unpublished.
    Jon Adams · 5 years ago
    The function

    1). Formula 1: =MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"));

    It's absolutely what i needed and extremely cool!

    Thanks so much!

    Jon