Excel-kaava: Laske tietyt sanat soluun

Sisällysluettelo

Yleinen kaava

=(LEN(text)-LEN(SUBSTITUTE(text,word,"")))/LEN(word)

Yhteenveto

Jos sinun on laskettava, kuinka monta kertaa tietty sana (tai mikä tahansa alimerkkijono) näkyy solun sisällä, voit käyttää kaavaa, joka käyttää SUBSTITUTE ja LEN. Yllä olevan kaavan yleisessä muodossa "teksti" edustaa solua, joka sisältää tekstiä, ja "sana" edustaa laskettavaa sanaa tai alaosaa. Esimerkissä käytämme tätä kaavaa:

=(LEN(B4)-LEN(SUBSTITUTE(B4,C4,"")))/LEN(C4)

Selitys

B4 on solu, johon laskemme sanoja, ja C4 sisältää laskettavan alaosan (sana tai mikä tahansa osa).

SUBSTITUTE poistaa alaotsikon alkuperäisestä tekstistä ja LEN laskee tekstin pituuden ilman alaosaa. Tämä luku vähennetään sitten alkuperäisen tekstin pituudesta. Tulos on niiden merkkien lukumäärä, jotka SUBSTITUTE poisti.

Lopuksi poistettujen merkkien lukumäärä jaetaan alimerkkijonon pituudella. Joten, jos alimerkkijono on 5 merkkiä pitkä ja 10 merkkiä puuttuu sen jälkeen, kun se on poistettu alkuperäisestä tekstistä, tiedämme, että alaosio esiintyi kahdesti alkuperäisessä tekstissä.

Käsittelylaukku

SUBSTITUTE on kirjainkokoinen funktio, joten se vastaa kirjainkokoa suoritettaessa korvausta. Jos sinun on laskettava sekä isojen että pienten kirjainten esiintyminen sanassa tai alaotsikossa, käytä SUBSTITUTE-tekstin sisällä olevaa UPPER-funktiota, kun haluat muuntaa tekstin isoksi, ennen kuin suoritat korvaamisen:

=(LEN(B4)-LEN(SUBSTITUTE(UPPER(B4),UPPER(C4),"")))/LEN(C4)

Koska tämä kaava muuntaa alaosan ja tekstin isoksi ennen korvaamisen suorittamista, se toimii joka tapauksessa yhtä hyvin tekstin kanssa.

Ongelmien käsittely

Sanojen laskeminen Excelissä on hankalaa, koska Excel ei tue säännöllisiä lausekkeita. Tämän seurauksena on vaikea kohdistaa sanat, jotka haluat laskea tarkalleen, samalla kun jätetään huomiotta alijonot ja muut osittaiset vastaavuudet (eli etsitään "kettu", mutta ei "ketut"). Välimerkit ja kirjainten vaihtelut tekevät tästä ongelmasta melko haastavan.

Yksi ratkaisu on käyttää toista kaavaa auttajasarakkeessa "tekstin normalisoimiseksi" ensimmäisenä vaiheena. Käytä sitten tämän sivun kaavaa laskeaksesi välilyönteihin käärittyjä sanoja saadaksesi tarkan määrän (ts. Voit etsiä "kettu" normalisoidusta tekstistä.

Huomaa: tämä lähestymistapa on vain yhtä hyvä kuin normalisoitu teksti, jonka pystyt luomaan, ja saatat joutua säätämään normalisointikaavaa monta kertaa saadaksesi tarvitsemasi tuloksen.

Mielenkiintoisia artikkeleita...