TEXT & FORMAT
FRÅGOR & SVAR

Nr 52
F: Jag har importerat data från ett annat system och alla poster har några mellanslag framför värden. Hur kan jag ta bort dessa?
S: Enklast är att använda sig av den inbyggda ersätt-funktionen.

1. Markera cellområdet.

2. Välj kommandot Redigera | Ersätt...

3. I textrutan för "Sök efter" anges ett mellanslag.

4. I textrutan för "Ersätt med" anges ingenting.

5. Klicka på OK-knappen - Klart!

Nr 51
F: Har namn som är angivet med versaler, såsom ANDERS ANDERSSON. Hur ska jag göra för att få den första bokstaven kvar som versal men övrig text som gemener?
S: Hm, följande formel löser det!

=BYT.UT(INITIAL(BYT.UT(A1;"'";"ööö"));"ööö";"'")

Men ännu enklare är förstås: =INITIAL(A1)

Nr 50
F: I några celler vill jag fylla ut cellinnehållet med "-", dvs anges A så ska resultatet bli A--------.
S: Jo, formatera de önskade cellerna med följande anpassade format: @*-
Nr 49
F: Hur gör att för att formatera värdet i en kombinerad text- och värdeuppgift?
S: Följande ger exempel på det:

="Resultat för perioden "&TEXT(D10;"#.###")&" Mkr"

Nr 48
F: Hur gör jag för att kunna ange text samt hämta ett värde från en annan cell i en och samma cell?
S: Följande ger dig vägledning:

="Antalet medlemmar uppgår till " & F7 & " st."
 
Nr 47
F: Jag har en lista över e-postadresser och vill erhålla domännamnet ur varje adress, dvs dennis@xldennis.com ----> xldennis.com.
S: Följande formel löser ditt problem:

=EXTEXT(A1;HITTA("@";A1)+1;LÄNGD(A1)-HITTA("@";A1))

Nr 46
F: Har textvärden i en kolumn som ser ut så här: 1234567A Nu vill jag formatera värdena så att de får följande format: 1-23-4567-A
S: Enklast är att använda sig av följande formel:

=VÄNSTER(A9;1)&"-"&EXTEXT(A9;2;2)&"-"&EXTEXT(A9;4;4)&"-"&HÖGER(A9;1)

Nr 45
F: Är det möjligt att formatera celler med ett talformat som omvandlar:
  • 1 till Ja
  • 2 till Nej
  • 0 till Vet ej
S: Jo, det går faktiskt (!) med hjälp av följande talformat:

[=1]"Ja";[=2]"Nej";"Vet ej"

Nr 44
F: Hur gör jag för att erhålla tecknet µ i en cell?
S: Enklast är att använda sig av funktionen TECKENKOD:

=TECKENKOD(181)

Nr 43
F: Jag har en uppställning med namn, där varje post består av förnamn efternamn. Nu behöver jag rumstera om listan så att jag har efternamnet i versaler först och därefter förnamnet, Anders Andersson -----> ANDERSSON Anders
S: Det kan lösas mha följande formel:

=VERSALER(HÖGER(A1;(LÄNGD(A1)-HITTA(" ";A1))))&" "&""&(VÄNSTER(A1;(LÄNGD(A1)-
HITTA(" ";A1)-2)))

Vill vi ha förnamnet först och i versaler kan följande formel användas:

=VERSALER(VÄNSTER(A1;HITTA(" ";A1))) & HÖGER(A1;LÄNGD(A1) - HITTA(" ";A1))

Nr 42
F: Jag vill sätta ihop tre värden till en textsträng:

Cell A1: XXRNAN
Cell A2: 000000009
Cell A3: 271099

Resultatet önskas bli: XXRNAN00009271099

S: Enklast är att lösa det mha av följande formel:

=A1 & TEXT(A2;"00000") & A3

Nr 41
F: För att skapa e-postadresser måste jag byta ut å ä ö i namnlistan - Hur gör jag det mha en formel?
S: Lämpligast sker det mha av funktion BYT.UT och för att ersätta samtliga tecken samtidigt måste funktionen nästlas:

=BYT.UT(BYT.UT(BYT.UT(G11;"ö";"o");"å";"a");"ä";"a")

Nr 40
F: Jag behöver extrahera sista ordet i varje rad i en tabell...
S: Följande matrisformel hämtar det sista ordet ur cell A1:

{=HÖGER(A1;PASSA(" ";EXTEXT(A1;LÄNGD(A1)-RAD(INDIREKT("1:"&LÄNGD(A1)));1);0))}

Nr 39
F: I en lista vill jag t ex räkna antal "A"-poster men inte "a"-poster, dvs endast poster med ett versalt A!
S: Nedanstående matris-formel ger dig vägledning:
{=SUMMA(OM(C4:C13="A";1;0))}
Nr 38
F: I en leta-radformel vill jag kunna formatera postnumret som ett "riktigt" postnummer och alltid få versalt ortsnamn - Hur gör jag?
S: Följande sammansatta formel ger t ex 114 00  STOCKHOLM:
=TEXT(LETARAD($G$8;Kundlista;3;0);"000\ 00")) & " " & VERSALER(LETARAD($G$8;Kundlista;4;0))
Nr 37
F: Jag har textvärden som ser ut som "ABC/DDD/123/" och vill räkna antal förekomster av "/" i varje cell.
S: Det kan lösas mha följande formel:

=LÄNGD(A1)-LÄNGD(BYT.UT(A1;"/";""))

Nr 36
F: Jag har textvärden som ser ut som "ABC" och vill ändra på dessa till följande uppställning "ACB".
S: Hm, formeln nedan ger dig vägledning:

=VÄNSTER(A1;1)&HÖGER(A1;1)&EXTEXT(A1;2;1)

Nr 35
F: Jag vill kunna räkna antal celler som matchar exakt ett textuttryck, såsom "X" men inte "x" eller "xx".
S: Följande matrisformel kan vara dig behjälplig:

{=SUMMA(N(EXAKT(A1:A1000;"X")))}

Nr 34
F: Från en datumangivelse vill jag få fram vilken veckodag det är.
Jag behöver omvandla uttrycket till ett riktigt textvärde!
S: Hm, formeln =TEXT(A1;"dd") ger rätt värde men genererar inte det önskade textformatet. Följande formel är därför att föredra:

=VÄLJ(VECKODAG(A1;2);"Må";"Ti";"Ons";"To";"Fre";"Lö";"Sö")

Nr 33
F: Hur ska jag göra för att sammanfoga de 3 första tecken i det första ordet med de 3 första tecknen i det andra ordet i en cell?
S: Här får vi använda oss av en mindre komplex textformel:

=VÄNSTER(A1;3)&EXTEXT(A1;HITTA(" ";A1)+1;3)

Nr 32
F: Jag har en kolumn med URL:er (hyperlänkar) och vill kunna få fram själva namnet, t ex www.xldennis.com ----> xldennis.
S: Jo, det sker bäst med formel:

=EXTEXT(A1;HITTA(".";A1)+1;HITTA(".";A1;HITTA(".";A1)+1)-HITTA(".";A1)-1)

Nr 31
F: Jag behöver räkna antal tecken i ett flertal celler, vilka innehåller text.
S: Du kan använda dig av följande matrisformel:

{=SUMMA(LÄNGD(C1:C4))}

Nr 30
F: Kan man räkna antal ord i en lista som innehåller t ex bokstaven "D"?
S: Ja, det kan man göra mha följande formel:

=ANTAL.OM(A1:A5;"*D*")

Nr 29
F: Jag omvandlar datum till veckodagar. Ibland händer det att det förekommer tomma celler, vilka ger upphov till felmeddelanden.
S: En villkorssats löser det upplevda problemet enligt följande:

=OM(A1;TEXT(A1;"DDDD");"") 

Nr 28
F: Jag vill kontrollera att det bara förekommer textvärden i en datamängd?
S: Här kan man använda sig av villkorsstyrd formatering. Följande formel kan anges: =ÄRTEXT(A1) som kopieras nedåt i det önskade området. 
Vill man försäkra sig om att det är bara textvärden som matas in måste man använda sig av Dataverifiering och då m h a formeln
=ÄRTEXT(A1).
Nr 27
F: Jag har 12 nummer, 1-12, som jag plockar ifrån. Varje gång jag har plockat ett nummer från listan vill jag att den visar de återstående numrena.
S: Jo, det går att lösa men lösningen består av följande steg:

Steg 1 -  Skriv in följande i cell B1: ,1,2,3,4,5,6,7,8,9,10,11,12,

I cell B2 anges följande formel: =BYT.UT(B1;","&A2&",";",,")

När ett tal mellan 1 - 12 anges i cell A2 reduceras talen i cellen B2. För att utöka området behöver man bara kopiera formeln nedåt i kolumn B. 

Nr 26
F: Jag vill kunna ta bort mellannamnet i följande uppställning: Förnamn Mellannamn Efternamn - hur gör jag?
S: Det kan lösas m h a följande formel:
=VÄNSTER(A1;HITTA(" ";A1)-1)&HÖGER(A1;LÄNGD(A1)+1-(HITTA(" ";A1;HITTA(" ";A1)+1)))
Nr 25
F: Jag vill kunna extrahera ut efternamnet i följande uppställning Förnamn Mellannamn Efternamn - hur gör jag?
S: Som vanligt (!) måste vi använda oss av en matrisformel:

{=HÖGER(A1;LÄNGD(A1)-HITTA(" ";A1;MAX(OM(ÄRTAL(HITTA(" "; RENSA(A1);RAD($A$1:$A$50)));HITTA(" "; RENSA(A1); RAD ($A$1:$A$50))))))}

Eller mha följande formel:

{=HÖGER(A1;PASSA(" ";EXTEXT(A1;LÄNGD(A1) -RAD(INDIREKT("1:"&LÄNGD(A1)));1);0))}

För att extrahera förnamn och mellannamn kan följande formel användas:

{=VÄNSTER(A1;LÄNGD(A1)-(PASSA(" ";EXTEXT(A1;LÄNGD(A1) -RAD(INDIREKT("1:"&LÄNGD(A1)));1);0)))}

Nr 24
F: Jag vill kunna extrahera numeriska värden i en textmassa. Värdet 45 ska kunna hämtas från ber45obcd. 
S: Har man både text före och efter värdet så kan man lösa det med följande matrisformel:
{=EXTEXT(A1;PASSA(FALSKT;ÄRFEL(1*EXTEXT(A1;RAD(INDIREKT("1:10"));1));0);10-
SUMMA(1*ÄRFEL(1*EXTEXT(A1;RAD(INDIREKT("1:10"));1))))*1}
Nr 23
F: Jag vill kunna räkna antal ord i celler!
S: Om man vill göra det för enstaka celler kan man lösa det mha:
=LÄNGD(RENSA(A1))-LÄNGD(BYT.UT(RENSA(A1);" ";""))+ÄRTEXT(A1). 

Vill man räkna antal ord för ett cellområde går det att lösa mha:
=PRODUKTSUMMA(LÄNGD(RENSA(A1:A11))-LÄNGD(BYT.UT(RENSA(A1:A11);" ";""))+ÄRTEXT(A1:A11))
Nr 22
F: Om en cell innehåller tecknet "-" vill jag att den flaggas som "SANT" annars "FALSKT".
S: Inklusive felhantering blir lösningen följande: =OM(ÄRFEL(HITTA("-";A1));FALSKT;SANT)
Nr 21
F: Jag vill kunna skriva in t ex 6/12 utan att XL formaterar om det till 1/2.
S: Skapa ett eget talformat: ?/12
Nr 20
F: Jag får en lista varje vecka med bl a textvärden, såsom 300 00 4257 32. Jag vill på ett enkelt sätt få "riktiga" värden, dvs 30000425732.
S: Använda följande textfunktion: =BYT.UT(RENSA(C3);" ";"")
Nr 19
F: Jag har fullständiga namn, såsom Nilsson, Nils, i en kolumn. Nu vill jag få fram efternamnen i en separat kolumn - hur gör jag?
S: I kolumnen intill listan skapas följande formel:

=RENSA(VÄNSTER(A1;OM(ÄRFEL(HITTA(",";A1));LÄNGD(A1);HITTA(",";A1;1)-1)))

Kopiera den nedåt i kolumnen. Se också
Fråga 1.
Nr 18
F: Jag har fullständiga namn, såsom Nilsson, Nils, i en kolumn. Nu vill jag sortera listan på basis av förnamnen - hur gör jag?
S: I kolumnen intill listan skapas följande formel:
=OM(ÄRFEL(HITTA(",";A1));"";RENSA(HÖGER(A1;LÄNGD(A1)- HITTA(",";A1))))
Kopiera den nedåt i kolumnen och markera såväl listan som kolumnen och välj därefter att sortera listan efter den nya kolumnen. Se också
Fråga 1.
Nr 17
F: Jag använder mig av NU-funktionen men vill få datumet som 99-08-03.
S: M h a TEXT-funktionen kan det lösas: =TEXT(NU();"ÅÅ-MM-DD")
Nr 16
F: Hur kan jag reducera tiden för formatering?
S: Det finns ett flertal lösningar på det:
- Använd Hämta Format-knappen på standardverktygsfältet.
- Markera samtliga områden som ska ha samma formatering och formatera allt samtidigt.
- Formatera det första området, gå till nästa och tryck ned
  F4-knappen eller CTRL + Y.
- Använd Autoformat (Format / Autoformat)
- Skapa egna formatmallar (Format / Formatmallar)
- Villkorsstyrd formatering! 
Nr 15
F: Vid import vill jag separera datan från en cell till två celler, Avd A:450 ska bli Avd A: och 450 osv.
S: Använd kommandot Data/Text till kolumner! Man kan även lösa det mha formler: 
För att få fram textvärdena:
=EXTEXT(A1;HITTA(":";A1;1)+1;(LÄNGD(A1)))
För att erhålla Avd mm:s 
=VÄNSTER(A1;HITTA(":";A1;1)+1).
Nr 14
F: Hur ska jag göra för att all formatering ska vara kvar när jag kopierar en kolumn till ett nytt kalkylblad?
S: Det finns två "säkra" metoder för detta:
Metod 1
Markera hela kolumnen. Välj därefter ett kopieringskommando och klistra in kolumnen i det nya kalkylbladet.
Metod 2
Kopiera hela kalkylbladet genom att peka med musen på bladfliken samtidigt som du trycker ned CTRL-tangenten och dra bladet till en ny position.
Nr 13
F: Jag behöver ha 12 tecken av varje artikel i en lista, dvs varje artikelnamn ska vara 16 tecken inklusive "tomma"-tecken.
S: Anta att listan finns i A-kolumnen så kan du med följande formel erhålla antal önskade tecken per cell: =A1&REP(" ";12-LÄNGD(A1))
Nr 12
F: Hur ska jag göra för att slå ihop tre kolumners innehåll med varandra och presentera resultatet på följande sätt: A1=1;B1=2;C1=3?
S: Det kan ske m h a sammanfogningsfunktionen (&) och TEXTNUM enligt följande:

="A1="&TEXTNUM(A1)&";B1="&TEXTNUM(B1)&";C1="&TEXTNUM(C1)&"."
Nr 11
F: Jag har en lista innehållande produkt-id mm. Jag vill få fram en ny lista innehållande enbart det första ordet för respektive produkt-id.
S: Det enklaste sättet är att använda följande formel:
=VÄNSTER(A12;HITTA(" ";A12;1)).
Nr 10
F: Jag får varje vecka en lista och för att kunna göra beräkningar måste jag ta bort en bokstav, t ex F7786 ska bli 7786. Antal tecken efter bokstaven varierar.
S: Här kan man använda sig av EXTEXT-funktionen: =EXTEXT(A1;2;100).
Nr 9
F: Vid import av data får jag ej önskat format på personnummer, t ex 199908172435. Hur gör jag för att få fram 990817-2435?
S: Följande formel löser problemet:
=EXTEXT(A1;3;6)&"-"&HÖGER(A1;4)
Nr 8
F: Hur ska jag göra för att kontrollera att en textlängd är 5 eller 10 ord långt?
S: Använd OM-funktionen i kombination med ELLER-funktionen:
=OM(ELLER(LÄNGD(A1)=5;LÄNGD(A1)=10);"";"Fel") 
Nr 7
F: Jag ska skriva in numeriska artikelnummer och vill att alla artikelnummer ska vara femsiffrigt, t ex 00235.
S: Skapa ett eget talformat där formatet anges som 00000!
Nr 6
F: Jag vill applicera funktionerna GEMENER och VERSALER på en hel kolumn - hur sker det bäst?
S: För att täcka en kolumn så kan man använda följande argument: =VERSALER(A:A) och för att täcka en rad blir det =VERSALER(3:3).
Nr 5
F: Kan jag räkna antal förekomster av ett visst tecken i en cell?
S: Ja, det går att lösa. Anta att man vill räkna antal 0:or i cellen A1 då blir formeln följande:
=LÄNGD(A1)-LÄNGD(BYT.UT(A1;"0";""))
Vill man räkna specialtecken sker det på följande sätt:
=LÄNGD(A1)-LÄNGD(BYT.UT(A1;TECKENKOD(64);""))

Vill man räkna ut antal förekomster av "SV" i en textsträng sker det på följande sätt:
=(LÄNGD(A1)-LÄNGD(BYT.UT(VERSALER(A1);"SV";"")))/LÄNGD("SV")

Nr 4
F: Jag vill sammanfoga data men med ett blanksteg mellan för- och efternamn?
S: Anta att du har värdena XL (A1) och Dennis (B1). Lösningen blir då =A1&" "&B1, dvs man sammanfogar också ett blanksteg!
Nr 3
F: Jag vill sätta ihop värden i två celler med varandra - kan man göra det?
S: Använd SAMMANFOGA-funktionen, t ex =SAMMANFOGA(A1&" / ";A2) ger t ex resultatet "April / Maj"
Nr 2
F: Hur skriva in flera rader text i en cell?
S: Skriv in den första radens text - ALT+ENTER - nästa rad. 
Nr 1
F: Hur separera efternamn från förnamn, dvs dela upp namn i två kolumner?
S: Alternativ 1:Markera hela kolumnen och välj kommandot "Data / Text till kolumner". I "Steg 2" markeras alternativet "Blanksteg" och därefter slutförs operationen - Voila!

Alternativ 2: Använd följande formler i två separata kolumner,
=VÄNSTER(A1;HITTA(",";A1)-1) och 
=EXTEXT(A1;HITTA(",";A1)+2;99)

Se också Fråga 18 och 19.