
Yleinen kaava
=TEXTJOIN("",1,IF(ISNUMBER(MATCH(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),ROW(INDIRECT("65:90")),0)),MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),""))
Yhteenveto
Voit lyhentää isoja kirjaimia sisältävää tekstiä kokeilemalla tätä taulukkoa, joka perustuu TEXTJOIN-funktioon, joka on uusi Office 365: ssä ja Excel 2019: ssä oleva toiminto. Voit käyttää tätä lähestymistapaa nimikirjaimien luomiseen tai lyhenteiden luomiseen. Ainoastaan isot kirjaimet selviävät tästä kaavasta, joten lähdetekstissä on oltava isoja kirjaimia. Voit käyttää PROPER-funktiota suurten kirjainten kirjoittamiseen tarvittaessa.
Esitetyssä esimerkissä kaava kohdassa C5 on:
=TEXTJOIN("",1,IF(ISNUMBER(MATCH(CODE(MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)),ROW(INDIRECT("65:90")),0)),MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1),""))
Selitys
Sisältäpäin työskentelevää MID-toimintoa käytetään merkkijonon heittämiseen yksittäisten kirjainten ryhmäksi:
MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)
Tässä kaavan osassa MID, ROW, INDIRECT ja LEN käytetään muuntaa merkkijono taulukoksi tai kirjaimiksi, kuten tässä on kuvattu.
MID palauttaa taulukon kaikista tekstin merkeistä.
("W"; "i"; "l"; "l"; "i"; "a"; "m"; ""; "S"; "h"; "a"; "k"; "e ";" s ";" p ";" e ";" a ";" r ";" e ")
Tämä taulukko syötetään CODE-toimintoon, joka antaa joukon numeerisia ASCII-koodeja, yksi kutakin kirjainta kohti.
ROW ja INDIRECT käytetään erikseen uuden numeerisen taulukon luomiseen:
ROW(INDIRECT("65:90")
Tämä on fiksu bitti. Numerot 65-90 vastaavat kaikkien AZ-kirjainten välisten isojen kirjainten ascii-koodeja. Tämä matriisi menee MATCH-funktioon hakutaulukkona, ja alkuperäinen ASCII-koodiryhmä annetaan hakuarvona.
MATCH palauttaa sitten joko numeron (sijainnin perusteella) tai # N / A -virheen. Numerot edustavat isoja kirjaimia, joten ISNUMBER-funktiota käytetään IF-funktion kanssa tulosten suodattamiseen. Vain merkit, joiden ascii-koodi on välillä 65-90, tekevät lopullisen taulukon, joka kootaan sitten TEXTJOIN-funktion kanssa lopullisen lyhenteen tai lyhenteen luomiseksi.