Kuinka laskea merkkejä Excelissä: solun tai alueen merkkien kokonaismäärä tai tietyt merkit

  • Jaa Tämä
Michael Brown

Tässä opetusohjelmassa kerrotaan, miten merkkejä lasketaan Excelissä. Opit kaavat, joilla saat alueen merkkien kokonaismäärän ja voit laskea vain tietyt merkit solussa tai useissa soluissa.

Edellisessä opetusohjelmassamme esiteltiin Excelin LEN-funktio, jonka avulla voidaan laskea solussa olevien merkkien kokonaismäärä.

LEN-kaava on käyttökelpoinen yksinään, mutta yhdessä muiden funktioiden, kuten SUM, SUMPRODUCT ja SUBSTITUTE, kanssa sillä voidaan hoitaa paljon monimutkaisempia tehtäviä. Tämän ohjeen myöhemmässä vaiheessa tarkastelemme tarkemmin muutamia perus- ja kehittyneitä kaavoja merkkien laskemiseksi Excelissä.

    Miten lasketaan kaikki merkit alueella

    Kun on kyse merkkien kokonaismäärän laskemisesta useissa soluissa, mieleen tulee heti ratkaisu, jossa lasketaan kunkin solun merkkimäärä ja lasketaan nämä luvut yhteen:

    =LEN(A2)+LEN(A3)+LEN(A4)

    Tai

    =SUM(LEN(A2),LEN(A3),LEN(A4))

    Yllä olevat kaavat saattavat toimia hyvin pienellä alueella. Jos haluamme laskea merkkien kokonaismäärän suuremmalla alueella, meidän on parempi keksiä jotain kompaktimpaa, esimerkiksi SUMPRODUCT-funktio, joka kertoo taulukot ja palauttaa tuotteiden summan.

    Tässä on yleinen Excel-kaava, jolla lasketaan merkkejä alueella:

    =SUMPRODUCT(LEN( alue ))

    Todellisessa elämässä kaava voi näyttää samankaltaiselta:

    =SUMPRODUCT(LEN(A1:A7))

    Toinen tapa laskea merkkejä alueella on käyttää LEN-funktiota yhdessä SUM-funktion kanssa:

    =SUM(LEN(A1:A7))

    Toisin kuin SUMPRODUCT, SUM-funktio ei laske oletusarvoisesti matriiseja, ja sinun on painettava Ctrl + Shift + Enter, jotta se muuttuu matriisikaavaksi.

    Kuten seuraavassa kuvakaappauksessa näkyy, SUM-kaava palauttaa saman kokonaismerkkimäärän:

    Miten tämä alueen merkkien lukumäärän kaava toimii

    Tämä on yksi suoraviivaisimmista kaavoista merkkien laskemiseen Excelissä. LEN-funktio laskee merkkijonon pituuden jokaiselle solulle määritetyssä alueessa ja palauttaa ne numeromääränä. Sitten SUMPRODUCT- tai SUM-funktio laskee nämä numerot yhteen ja palauttaa merkkien kokonaismäärän.

    Yllä olevassa esimerkissä lasketaan yhteen 7 numeron joukko, joka edustaa soluissa A1-A7 olevien merkkijonojen pituuksia:

    Huomaa, että Excelin LEN-funktio laskee ehdottomasti seuraavat tiedot kaikki merkit kussakin solussa , mukaan lukien kirjaimet, numerot, välimerkit, erikoismerkit ja kaikki välilyönnit (etu- ja jälkitunnukset sekä sanojen väliset välilyönnit).

    Kuinka laskea tietyt merkit solussa

    Joskus solun kaikkien merkkien laskemisen sijasta saatat joutua laskemaan vain tietyn kirjaimen, numeron tai erikoissymbolin esiintymät.

    Jos haluat laskea, kuinka monta kertaa tietty merkki esiintyy solussa, käytä LEN-funktiota yhdessä SUBSTITUTE-funktion kanssa:

    =LEN( solu )-LEN(SUBSTITUTE( solu , merkki ,""))

    Kaavan ymmärtämiseksi on hyvä tarkastella seuraavaa esimerkkiä.

    Oletetaan, että ylläpidät toimitettujen tuotteiden tietokantaa, jossa kullakin tuotetyypillä on oma yksilöllinen tunnisteensa. Jokainen solu sisältää useita tuotteita, jotka on erotettu toisistaan pilkulla, välilyönnillä tai muulla erotinmerkillä. Tehtävänä on laskea, kuinka monta kertaa tietty yksilöllinen tunniste esiintyy kussakin solussa.

    Jos oletetaan, että toimitettujen tuotteiden luettelo on sarakkeessa B (alkaen B2:sta), ja laskemme A-kirjaimen esiintymien lukumäärän, kaava on seuraava:

    =LEN(B2)-LEN(SUBSTITUTE(B2, "A",""))

    Miten tämä Excelin merkkien laskukaava toimii

    Jotta ymmärtäisimme kaavan logiikkaa, jaetaan se pienempiin osiin:

    • Ensin lasketaan merkkijonon kokonaispituus B2:ssa:

    LEN(B2)

  • Sitten käytät SUBSTITUTE-toimintoa poistamaan kaikki kirjaimen " A " B2:ssa korvaamalla se tyhjällä merkkijonolla (""):
  • SUBSTITUTE(B2, "A","")

  • Sitten lasketaan merkkijonon pituus ilman " A " hahmo:
  • LEN(SUBSTITUTE(B2, "A","")))

  • Lopuksi vähennetään merkkijonon pituus ilman " A " merkkijonon kokonaispituudesta.
  • Tuloksena saat "poistettujen" merkkien lukumäärän, joka vastaa kyseisen merkin esiintymien kokonaismäärää solussa.

    Sen sijaan, että määrittelisit laskettavan merkin kaavassa, voit kirjoittaa sen johonkin soluun ja viitata sitten kyseiseen soluun kaavassa. Näin käyttäjät voivat laskea minkä tahansa muun merkin, jonka he syöttävät kyseiseen soluun, ilman, että kaavaasi tarvitsee muuttaa:

    Huomaa: Excelin SUBSTITUTE on isokirjainherkkä funktio, joten myös yllä oleva kaava on isokirjainherkkä. Esimerkiksi yllä olevassa kuvakaappauksessa solussa B3 on kolme kertaa "A" - kaksi isoa kirjainta ja yksi pieni kirjain. Kaava on laskenut vain isot kirjaimet, koska annoimme "A" SUBSTITUTE-funktiolle.

    Case-sensitiivinen Excel-kaava tiettyjen merkkien laskemiseksi solussa

    Jos tarvitset merkkien lukumäärän, jossa ei oteta huomioon isoja ja pieniä kirjaimia, upota UPPER-funktio SUBSTITUTE:n sisälle muuntamaan määritetty merkki isoksi ennen korvauksen suorittamista. Muista myös syöttää kaavassa iso merkki.

    Jos haluat esimerkiksi laskea "A" ja "a" -kohteet solussa B2, käytä tätä kaavaa:

    =LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), "A",""))

    Toinen tapa on käyttää sisäkkäisiä Substitute-funktioita:

    =LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE (B2, "A",""), "a","")

    Kuten alla olevasta kuvakaappauksesta näet, molemmat kaavat laskevat virheettömästi määritetyn merkin isot ja pienet kirjaimet:

    Joissakin tapauksissa saatat joutua laskemaan useita eri merkkejä taulukossa, mutta et ehkä halua muuttaa kaavaa joka kerta. Tässä tapauksessa aseta yksi Korvaa-funktio toisen sisään, kirjoita laskettava merkki johonkin soluun (tässä esimerkissä D1) ja muunna solun arvo isoihin ja pieniin kirjaimiin UPPER- ja LOWER-funktioilla:

    =LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE(B2, UPPER($D$1), ""), LOWER($D$1),""))))

    Vaihtoehtoisesti voit muuntaa sekä lähdesolun että merkin sisältävän solun joko isoksi tai pieneksi. Esimerkiksi:

    =LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), UPPER($C$1),"")))

    Tämän lähestymistavan etuna on se, että riippumatta siitä, syötetäänkö viitattuun soluun iso vai pieni kirjainmerkki. case-sensitiivinen merkkien laskukaava palauttaa oikean lukeman:

    Laske tietyn tekstin tai osajonon esiintymät solussa.

    Jos haluat laskea, kuinka monta kertaa tietty merkkiyhdistelmä (eli tietty teksti tai osajono) esiintyy tietyssä solussa, esimerkiksi "A2" tai "SS", jaa sitten edellä mainittujen kaavojen palauttama merkkien määrä osajonon pituudella.

    Case-sensitive kaava:

    =(LEN(B2)-LEN(SUBSTITUTE(B2, $C$1,"")))/LEN($C$1))

    Case-insensitive kaava:

    =(LEN(B2)-LEN(SUBSTITUTE(LOWER(B2),LOWER($C$1),"")))/LEN($C$1))

    B2 on solu, joka sisältää koko merkkijonon, ja C1 on teksti (osajono), jonka haluat laskea.

    Kaavan yksityiskohtainen selitys on kohdassa Kuinka laskea tietty teksti / sanat solussa.

    Kuinka laskea tietyt merkit alueelta?

    Nyt kun tunnet Excel-kaavan, jolla voit laskea merkkejä solussa, haluat ehkä parantaa sitä edelleen selvittääksesi, kuinka monta kertaa tietty merkki esiintyy alueella. Tätä varten otamme Excelin LEN-kaavan, jolla voidaan laskea tietty merkki solussa ja jota käsiteltiin edellisessä esimerkissä, ja laitamme sen SUMPRODUCT-funktion sisään, joka voi käsitellä matriiseja:

    SUMPRODUCT(LEN( alue )-LEN(SUBSTITUTE( alue , merkki ,"")))

    Tässä esimerkissä kaava on seuraavanlainen:

    =SUMPRODUCT(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A",""))))

    Ja tässä on toinen kaava, jolla voit laskea merkkejä Excelin alueella:

    =SUM(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A",""))))

    Ensimmäiseen kaavaan verrattuna ilmeisin ero on se, että käytetään SUMPRODUCTin sijasta SUMMAA. Toinen ero on se, että se vaatii Ctrl + Shift + Enter -näppäinten painamisen, koska toisin kuin SUMPRODUCT, joka on suunniteltu käsittelemään matriiseja, SUMMA voi käsitellä matriiseja vain, kun sitä käytetään komennossa SUMPRODUCT. sarjakaava .

    Jos et halua koodata merkkiä kaavaan, voit tietysti kirjoittaa sen johonkin soluun, esimerkiksi D1, ja viitata siihen soluun merkkien lukumäärän kaavassa:

    =SUMPRODUCT(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1,""))))

    Huom. Tilanteissa, joissa lasket jonkin tietyn ominaisuuden esiintymiä osajono alueella (esim. tilaukset, jotka alkavat kirjaimella "KK" tai "AA"), sinun on jaettava merkkien määrä osajonon pituudella, muuten jokainen merkki osajonossa lasketaan yksitellen. Esim:

    =SUM((LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1, ""))) / LEN(D1)))

    Miten tämä merkkien laskentakaava toimii

    Kuten ehkä muistat, SUBSTITUTE-funktiota käytetään korvaamaan kaikki määritetyn merkin ("A" tässä esimerkissä) esiintymät tyhjällä merkkijonolla ("").

    Tämän jälkeen annamme SUBSTITUTE:n palauttaman merkkijonon Excelin LEN-funktiolle, jotta se laskee merkkijonon pituuden ilman A-kirjaimia. Sitten vähennämme merkkien lukumäärän merkkijonon kokonaispituudesta. Näiden laskutoimitusten tuloksena on merkkijonojen lukumäärän joukko, jossa on yksi merkkimäärä solua kohti.

    Lopuksi SUMPRODUCT laskee matriisin numerot yhteen ja palauttaa määritetyn merkin kokonaislukumäärän alueella.

    Kaava, jossa ei oteta huomioon isoja ja pieniä kirjaimia ja joka laskee tietyt merkit alueella

    Tiedät jo, että SUBSTITUTE on isokirjainherkkä funktio, joten myös merkkien lukumäärää koskeva Excel-kaavamme on isokirjainherkkä.

    Jos haluat, että kaava ei huomioi isoja ja pieniä kirjaimia, noudata edellisessä esimerkissä esitettyjä toimintatapoja: Isot ja pienet kirjaimet huomioimaton kaava tiettyjen merkkien laskemiseksi solussa.

    Voit erityisesti käyttää jotakin seuraavista kaavoista laskeaksesi tietyt merkit tietyllä alueella huomioimatta tapausta:

    • Käytä UPPER-toimintoa ja kirjoita merkki isolla alkukirjaimella:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(UPPER(B2:B8), "A",""))))

    • Käytä sisäkkäisiä SUBSTITUTE-funktioita:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), "A",""), "a","")))))

    • Käytä UPPER- ja LOWER-funktioita, kirjoita joko iso tai pieni merkki johonkin soluun ja viittaa kyseiseen soluun kaavassa:

      =SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), UPPER($E$1), ""), LOWER($E$1),""))))))

    Alla oleva kuvakaappaus havainnollistaa viimeistä kaavaa toiminnassa:

    Vinkki. Voit laskea esiintymiä seuraavasti erityinen teksti (osajono) alueella, käytä kaavaa, joka on esitetty kohdassa Kuinka laskea tietty teksti / sanat alueella.

    Näin voit laskea merkkejä Excelissä käyttämällä LEN-funktiota. Jos haluat tietää, miten laskea sanoja yksittäisten merkkien sijaan, löydät muutaman hyödyllisen kaavan seuraavasta artikkelistamme, pysy kuulolla!

    Sillä välin voit ladata esimerkin työkirjoista, joissa on tässä opetusohjelmassa käsitelty merkkien lukumäärän kaava, ja tutustua luetteloon asiaan liittyvistä resursseista sivun lopussa. Kiitos lukemisesta ja toivottavasti tapaamme pian!

    Michael Brown on omistautunut teknologian harrastaja, jolla on intohimo yksinkertaistaa monimutkaisia ​​prosesseja ohjelmistotyökalujen avulla. Yli vuosikymmenen kokemuksella teknologia-alalta hän on hionut taitojaan Microsoft Excelissä ja Outlookissa sekä Google Sheetsissä ja Docsissa. Michaelin blogi on omistettu jakamaan tietojaan ja asiantuntemustaan ​​muiden kanssa, ja se tarjoaa helposti seurattavia vinkkejä ja opetusohjelmia tuottavuuden ja tehokkuuden parantamiseksi. Olitpa kokenut ammattilainen tai aloittelija, Michaelin blogi tarjoaa arvokkaita oivalluksia ja käytännön neuvoja, joiden avulla saat kaiken irti näistä tärkeistä ohjelmistotyökaluista.