Excelkurs online

I Excelbloggen tar vi upp funktioner och tips i Excel som är bra att känna till och underlättar vardagen för dig.

Bryt ut delar av en text i Excel

När man jobbar med Excel så har man ofta en lista med text som är systematisk Exempelvis så kan man ha en lista med e-postadresser där man vill kunna bryta ut olika delar. De flesta e-postadresser följer en logik:

Namn.Efternam@Företagsnamn.Domän

För denna och många andra arbetsuppgifter så kan vi använda oss av olika textformler som finns i Excel.

En cell i Excel som innehåll ett stycke text kallas för en ”Sträng” (String). En sträng består av ett antal tecken där varje tecken har en position som refereras med en siffra. Det första tecknet har position 1 och det andra har position 2 osv. Vi skall nu titta vidare på några Excelfunktioner som behandlar strängar.

I bifogad fil finns det e-postadresser som är inlagda i kolumn A. Därefter finns det tre tabeller: Extraherade Strängar, Beräknade Positioner och Position som i bilden nedan.




Den sista tabellen Position bryter upp varje textsträng i en bokstav per cell och den tabellen fyller endast ett didaktiskt syfte att förtydliga vilken position varje tecken befinner sig på.

Tabellen Beräknade Positioner så har formeln HITTA() och LÄNGD() används för att ta reda på var vissa nyckel positioner finns som vi sedan använder oss av i tabellen Extraherade Strängar där vi har lyft ut Förnamn, Efternamn, Företagsnamn och Domän.   


I tabell Extraherade Strängar så används följande formler för att lyfta en textsträng:

    VÄNSTER() – Funktionen vänster lyfter ut ett angivet antal tecken ifrån första tecknet i en textsträng. Ange först cellen sedan antalet tecken som skall returneras.

    HÖGER() – Kan sägas vara en motsats till vänster som extraherar ett angivet antal tecken ifrån det sista tecknet i en textsträng. Ange först cellen sedan antalet tecken som skall returneras.

    EXTEXT() – Lyfter ut ett angivet antal tecken ifrån en startposition som du måste ange. Ange först cellen sedan från vilken startposition som text skall utvinnas ifrån. Det tredje argumentet är antalet tecken som skall returneras från vänster till höger.

I tabell Beräknade Positioner så används följande formler för att returnera en siffra.

    HITTA() – Returnerar startpositionen av en angiven sträng inom en sträng från vänster till höger. Du måste ange texten med citationstecken, t.ex. ”@”. Man kan även välja att ange ifall den skall starta ifrån en valfri position inom strängen som söks igenom. Detta är väldigt användbart att använda sig av när man har förekomst av ett tecken flera gånger, som t.ex. punkter i en e-postadress.

    LÄNGD() – Returnerar antalet tecken i en textsträng


Förnamn: =VÄNSTER(A3;H3-1). Här anropar vi först den textsträng i cell A3 där vår e-postadress finns, det är den textsträng som vi vill lyfta ut text ur. För att få veta antalet tecken så söker vi efter första punkten. Den har vi i det här fallet i position 5 vilket vi kan se i kolumn H. Notera att vi lägger in ett -1. Gör vi inte det så får vi även med punkt, titta i tabellen Position för att se hur positionerna ligger.

Efternamn: =EXTEXT(A3;H3+1;I3-H3-1). Efternamnet är lite mer komplicerat eftersom det ligger mellan den första punkten och @-tecknet. Därför behöver vi använda oss av EXTEXT(). Vi anropar först textsträngen i A3 där vi har vår textsträng som vi vill utvinna texten ur. Därefter anger vi startpositionen vilket är den första punkten. Vi behöver här +1 eftersom annars börjar den från själva punkten, position 5, men vi vill ju att den skall börja med första bokstaven vilket är position 6, se tabell Position för förtydning.  

Vi behöver även ange antalet tecken som vi vill utvinna. Efternamnet ”Hansson” innehåller 7 tecken, det är det värdet vi vill mata in i formeln. Om vi tittar i tabellen Positioner så kan vi se att efternamnet ryms mellan @-tecknet och den första punkten. Om vi reducerar dom talen så får vi 8, vi reducerar därför med ytterligare ett för att få fram den rätta längden.


DELA