Räkna tecken i en cell (eller cellintervall) med hjälp av formler i Excel

Excel har några fantastiska textfunktioner som kan hjälpa dig när du arbetar med textdata.

I vissa fall kan du behöva beräkna det totala antalet tecken i en cell/intervall eller antalet gånger ett specifikt tecken förekommer i en cell.

Även om det finns LEN -funktionen som kan räkna antalet tecken i en cell, kan du också göra resten med en kombination av formler (som vi kommer att se senare i exemplen).

I denna handledning kommer jag att täcka olika exempel där du kan räkna totala eller specifika tecken i en cell/intervall i Excel.

Räkna alla tecken i en cell

Om du helt enkelt vill få ett totalt antal av alla tecken i en cell kan du använda LEN -funktionen.

LEN-funktionen tar ett argument, vilket kan vara texten med dubbla citattecken eller cellreferensen till en cell som har texten.

Anta till exempel att du har datauppsättningen enligt nedan och du vill räkna det totala antalet tecken i varje cell:

Nedan är formeln som gör detta:

= LEN (A2)

I sig ser LEN -funktionen kanske inte ut som mycket, men när du kombinerar den med andra formler kan den göra några underbara saker (som att få ordräkningen i en cell eller dela för- och efternamn).

Obs: LEN -funktionen räknar alla tecken i en cell, vare sig det är ett specialtecken, siffror, skiljetecken och mellanslagstecken (ledande, efterföljande och dubbla mellanslag mellan ord).

Eftersom LEN -funktionen räknar varje tecken i en cell kan du ibland få fel resultat om du har extra mellanslag i cellen.

Till exempel, i nedanstående fall returnerar LEN -funktionen 25 för texten i cell A1, medan den borde ha varit 22. Men eftersom den också räknar extra blanksteg får du fel resultat.

För att undvika att extra mellanslag räknas kan du först använda TRIM -funktionen för att ta bort eventuella inledande, bakre och dubbla mellanslag och sedan använda LEN -funktionen för att få det verkliga ordräkningen.

Nedanstående formel gör detta:

= LENG (TRIM (A2))

Räkna alla tecken i ett antal celler

Du kan också använda LEN -funktionen för att räkna det totala antalet tecken i ett helt område.

Anta till exempel att vi har samma dataset och den här gången, istället för att få antalet tecken i varje cell, vill jag veta hur många som finns i hela intervallet.

Du kan göra det med följande formel:

= SUMPRODUCT (LEN (A2: A7)))

Låt mig förklara hur denna formel fungerar.

I formeln ovan tar LEN -delen av funktionen ett helt cellområde och räknar tecknen i varje cell.

Resultatet av LEN -funktionen skulle vara:

{22;21;23;23;23;31}

Var och en av dessa siffror representerar teckentalet i cellen.

Och när du använder SUMPRODUCT -funktionen med den, skulle den helt enkelt lägga till alla dessa nummer.

Om du nu undrar varför du inte kan använda SUM istället för SUMPRODUCT, är anledningen att detta är en array och SUMPRODUCT kan hantera array men SUM -funktionen kan inte.

Men om du fortfarande vill använda SUM kan du använda formeln nedan (men kom ihåg att du måste använda Ctrl + Skift + Enter för att få resultatet istället för en vanlig Enter)

= SUMMA (LENG (A2: A7))

Räkna specifika tecken i en cell

Som jag nämnde är LEN -funktionens verkliga nytta när den används i kombination med andra formler.

Och om du vill räkna specifika tecken i en cell (det kan vara en bokstav, siffra, specialtecken eller mellanslagstecken) kan du göra det med en formelkombination.

Anta till exempel att du har datauppsättningen enligt nedan och du vill räkna det totala antalet ord i varje cell.

Det finns ingen inbyggd formel för att få ordantalet, men du kan räkna mellanslagstecknen och sedan använda det för att veta det totala antalet ord i cellen.

Nedan är formeln som ger dig det totala antalet mellantecken i en cell:

= LENN (A2) -LEN (ERSÄTTNING (A2, "", ""))+1

Ovanstående formel räknar det totala antalet blanksteg och lägger sedan till 1 i det numret för att få ordräkningen.

Så här fungerar den här formeln:

  • SUBSTITUTE -funktionen används för att ersätta alla blanksteg med ett tomt. LEN -funktionen används sedan för att räkna det totala antalet tecken när det inte finns några mellanslagstecken.
  • Resultatet av LEN (SUBSTITUTE (A2, ”“, ””)) subtraheras sedan från LEN (A2). Detta ger oss det totala antalet mellantecken som finns i cellen.
  • 1 läggs till i formeln och det totala antalet ord skulle vara ett mer än det totala antalet blanksteg (eftersom två ord är separerade med ett tecken).

Observera att om det finns några ledande, bakre eller dubbla mellanslag kommer du att få fel resultat. I ett sådant fall är det bäst att använda TRIM -funktionen tillsammans med LEN -funktionen.

Du kan också använda samma logik för att hitta ett specifikt tecken eller ord eller en fras i en cell.

Anta till exempel att jag har en datauppsättning som visas nedan där jag har olika satser, där varje sats har ett alfabet och ett nummer för att representera det (t.ex. A1, J2, etc.)

Nedan är formeln som ger dig det totala antalet gånger en sats med alfabetet A har skapats varje månad:

= LEN (B2) -LEN (ERSÄTTNING (B2, "A", "")))

Ovanstående formel använder igen samma logik - hitta textlängden i en cell med och utan det tecken som du vill räkna och ta sedan skillnaden mellan dessa två.

I ovanstående formel har jag hårdkodat tecknet som jag vill räkna, men du kan också lägga det i en cell och sedan använda cellreferensen. Detta gör det mer bekvämt eftersom formeln uppdateras nästa gång du ändrar texten i cellen.

Räkna specifika tecken med hjälp av skiftlägeskänslig formel

Det finns ett problem med formeln som används för att räkna specifika tecken i en cell.

SUBSTITUTE -funktionen är skiftlägeskänslig. Det betyder att du "A" inte är lika med "a". Det är därför du får fel resultat i cell C5 (resultatet borde ha varit 3).

Så hur kan du få teckentalet för ett specifikt tecken när det i alla fall kunde ha varit det (nedre eller övre).

Du gör det genom att göra din formel skiftlägeskänslig. Medan du kan välja en komplex formel, har jag helt enkelt lagt till teckentalet för båda fallen (gemener och versaler A).

= LEN (B2) -LEN (ERSÄTTNING (B2, "A", ""))+LEN (B2) -LEN (ERSÄTTNING (B2, "a", "")))

Räkna tecken/siffror före och efter decimal

Jag vet inte varför, men det här är en vanlig fråga jag får från mina läsare och har sett i många forum - som den här

Anta att du har en dataset som visas nedan och du vill räkna tecknen före decimalen och efter decimalen.

Nedan finns formlerna som gör detta.

Räkna tecken/siffror före decimalen:

= LEN (INT (A2))

Räkna tecken/siffror efter decimalen:

= LEN (A2) -FIND (".", A2)

Observera att dessa formler endast är avsedda för signifikanta siffror i cellen. Om du har inledande eller bakre nollor eller om du har använt anpassad talformatering för att visa fler/färre siffror skulle ovanstående formler fortfarande ge dig betydande siffror före och efter decimalen.

Så det här är några av de scenarier där du kan använda formler för att räkna tecken i en cell eller ett cellområde i Excel.

Jag hoppas att du tyckte att handledningen var användbar!

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave