Sisällysluettelo
Ohjeessa näytetään käytännön esimerkkien avulla, miten TEXTJOIN-funktiota käytetään tekstin yhdistämiseen Excelissä.
Viime aikoihin asti Excelissä oli kaksi yleistä tapaa yhdistää solujen sisältöjä: ketjutusoperaattori ja CONCATENATE-funktio. TEXTJOINin käyttöönoton myötä näyttää siltä, että on ilmestynyt tehokkaampi vaihtoehto, jonka avulla voit liittää tekstiä joustavammin, mukaan lukien minkä tahansa välissä olevan rajaajan. Mutta todellisuudessa siinä on paljon muutakin!
Excel TEXTJOIN-toiminto
Excelin TEXTJOIN yhdistää useiden solujen tai alueiden tekstijonoja ja erottaa yhdistetyt arvot toisistaan millä tahansa määrittelemälläsi erottimella. Se voi joko jättää tyhjät solut huomiotta tai sisällyttää ne tulokseen.
Toiminto on käytettävissä Excel for Office 365:ssä, Excel 2021:ssä ja Excel 2019:ssä.
TEXTJOIN-funktion syntaksi on seuraava:
TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...)Missä:
- Delimiter (pakollinen) - on erotin jokaisen yhdistettävän tekstiarvon välissä. Yleensä se annetaan tekstijonona kaksinkertaisten lainausmerkkien sisällä tai viittauksena soluun, joka sisältää tekstijonon. Erotinmerkkinä annettua numeroa käsitellään tekstinä.
- Ignore_empty (pakollinen) - Määrittää, jätetäänkö tyhjät solut huomiotta vai ei:
- TRUE - jätä tyhjät solut huomiotta.
- FALSE - sisällyttää tyhjät solut tuloksena olevaan merkkijonoon.
- Teksti1 (pakollinen) - ensimmäinen yhdistettävä arvo. Voidaan antaa merkkijonona, viittauksena merkkijonon sisältävään soluun tai merkkijonojen joukkona, kuten solualueena.
- Teksti2 , ... (valinnainen) - muita tekstiarvoja, jotka yhdistetään toisiinsa. Tekstiargumentteja on sallittu enintään 252, mukaan lukien text1 .
Yhdistetään esimerkiksi solujen B2, C2 ja D2 osoiteosat yhteen soluun ja erotetaan arvot toisistaan pilkulla ja välilyönnillä:
CONCATENATE-toiminnolla sinun on määritettävä jokainen solu erikseen ja laitettava jokaisen viittauksen jälkeen erotin (", "), mikä voi olla hankalaa, kun yhdistät useiden solujen sisältöä:
=CONCATENATE(A2, ", ", B2, ", ", ", C2)
Excelin TEXTJOIN-toiminnolla määrität rajaajan vain kerran ensimmäisessä argumentissa ja annat solualueen kolmantena argumenttina:
=TEXTJOIN(", ", TRUE, A2:C2)
TEXTJOIN Excelissä - 6 muistettavaa asiaa
Jotta voit käyttää TEXTJOINia tehokkaasti työlehdissäsi, on otettava huomioon muutama tärkeä seikka:
- TEXTJOIN on uusi toiminto, joka on käytettävissä vain Excel 2019 - Excel 365:ssä. Aikaisemmissa Excel-versioissa käytä sen sijaan CONCATENATE-toimintoa tai "&"-operaattoria.
- Uusissa Excel-versioissa voit myös käyttää CONCAT-toimintoa erillisten solujen ja alueiden arvojen yhdistämiseen, mutta siinä ei ole vaihtoehtoja rajaajille tai tyhjille soluille.
- Mikä tahansa TEXTJOINille toimitettu numero, joka on delimiter tai teksti argumentit muunnetaan tekstiksi.
- Jos delimiter ei ole määritetty tai se on tyhjä merkkijono (""), tekstiarvot liitetään yhteen ilman mitään erottimia.
- Funktio voi käsitellä enintään 252 tekstiargumenttia.
- Tuloksena syntyvä merkkijono voi sisältää enintään 32 767 merkkiä, mikä on Excelin solurajoitus. Jos tämä raja ylittyy, TEXTJOIN-kaava palauttaa #VALUE! -virheen.
Kuinka liittää tekstiä Excelissä - kaavaesimerkkejä
Jotta ymmärtäisit paremmin kaikki TEXTJOINin edut, katsotaanpa, miten toimintoa käytetään todellisissa tilanteissa.
Muunna sarake pilkulla erotetuksi luetteloksi
Kun haluat liittää yhteen pystysuoran luettelon, jossa arvot erotetaan toisistaan pilkulla, puolipisteellä tai muulla erottimella, TEXTJOIN on oikea toiminto.
Tässä esimerkissä yhdistämme kunkin joukkueen voitot ja tappiot alla olevasta taulukosta. Tämä voidaan tehdä seuraavilla kaavoilla, jotka eroavat toisistaan vain yhdistettävien solujen välillä.
Joukkue 1:
=TEXTJOIN(",", FALSE, B2:B6)
Joukkue 2:
=TEXTJOIN(",", FALSE, C2:C6)
Ja niin edelleen.
Kaikissa kaavoissa käytetään seuraavia argumentteja:
- Delimiter - pilkku (",").
- Ignore_empty on asetettu FALSE, jotta tyhjät solut voidaan sisällyttää, koska meidän on näytettävä, mitä pelejä ei ole pelattu.
Tuloksena saat neljä pilkulla erotettua luetteloa, jotka edustavat kunkin joukkueen voittoja ja tappioita tiiviissä muodossa:
Yhdistä solut, joissa on eri rajausmerkit
Tilanteessa, jossa yhdistetyt arvot on erotettava toisistaan erilaisilla rajausmerkeillä, voit joko antaa useita rajausmerkkejä joukkovakioina tai syöttää jokaisen rajausmerkin erilliseen soluun ja käyttää alue-viittausta delimiter argumentti.
Oletetaan, että haluat yhdistää solut, jotka sisältävät eri nimiosia, ja saada tuloksen tässä muodossa: Sukunimi , Etunimi Keskimmäinen nimi .
Kuten näet, sukunimi ja etunimi erotetaan toisistaan pilkulla ja välilyönnillä (", "), kun taas etunimi ja keskimmäinen nimi erotetaan toisistaan vain välilyönnillä (" "). Sisällytämme siis nämä kaksi erotinmerkkiä joukkovakioon {", ", ",""} ja saamme seuraavan kaavan:
=TEXTJOIN({", "," "}, TRUE, A2:C2)
Jossa A2:C2 ovat yhdistettävät nimiosat.
Vaihtoehtoisesti voit kirjoittaa rajaukset ilman lainausmerkkejä joihinkin tyhjiin soluihin (esimerkiksi pilkku ja välilyönti F3:een ja välilyönti G3:een) ja käyttää aluetta $F$3:$G$3 (huomioi absoluuttiset soluviittaukset) solujen delimiter argumentti:
=TEXTJOIN($F$3:$G$3, TRUE, A2:C2)
Käyttämällä tätä yleistä lähestymistapaa voit yhdistää solujen sisältöjä eri muodoissa.
Jos esimerkiksi haluat tuloksen, joka on kohdassa Etunimi Keskimmäinen alkukirjain Sukunimi ja poimitaan sitten LEFT-toiminnolla ensimmäinen merkki (alkukirjain) solusta C2. Erotusmerkkien osalta laitetaan välilyönti (" ") etunimen ja keskimmäisen alkukirjaimen väliin, piste ja välilyönti (". ") alkukirjaimen ja sukunimen väliin:
=TEXTJOIN({" ","."}, TRUE, B2, LEFT(C2,1), A2)
Liitä teksti ja päivämäärät Excelissä
Eräässä erityistapauksessa, kun yhdistät tekstiä ja päivämääriä, päivämäärien antaminen suoraan TEXTJOIN-kaavaan ei toimi. Kuten ehkä muistat, Excel tallentaa päivämäärät sarjanumeroina, joten kaava palauttaa päivämäärää edustavan numeron, kuten alla olevassa kuvakaappauksessa näkyy:
=TEXTJOIN(" ", TRUE, A2:B2)
Korjataksesi tämän sinun on muunnettava päivämäärä tekstijonoksi ennen sen liittämistä. Tässä kohtaa TEXT-funktio, jossa on haluttu formaattikoodi ("mm/dd/yyyyyy" meidän tapauksessamme), on kätevä:
=TEXTJOIN(" ", TRUE, A2, TEXT(B2, "mm/dd/yyyyyy"))
Tekstin yhdistäminen rivinvaihdoilla
Jos haluat yhdistää tekstiä Excelissä niin, että jokainen arvo alkaa uudelta riviltä, käytä CHAR(10) -merkkiä erottimena (jossa 10 on rivinvaihtomerkki).
Jos haluat esimerkiksi yhdistää solujen A2 ja B2 tekstiä ja erottaa arvot rivinvaihdolla, voit käyttää tätä kaavaa:
=TEXTJOIN(CHAR(10), TRUE, A2:B2)
Vihje: Jos haluat tuloksen näkyvän useampirivisenä, kuten yllä olevassa kuvakaappauksessa, varmista, että Wrap text -ominaisuus on käytössä.
TEXTJOIN IF tekstin ja ehtojen yhdistämiseksi.
Koska Excelin TEXTJOIN pystyy käsittelemään merkkijonojen määriä, sitä voidaan käyttää myös kahden tai useamman solun sisällön ehdolliseen yhdistämiseen. Jos haluat tehdä sen, käytä IF-funktiota arvioimaan solualuetta ja palauttamaan ehdon täyttävien arvojen joukon tiedostoon text1 TEXTJOIN-argumentti.
Oletetaan, että haluat hakea alla olevassa kuvakaappauksessa näkyvästä taulukosta luettelon seuraavista tiedoista Joukkue 1 Tätä varten sisällytä seuraava IF-lauseke ohjelmaan. text1 argumentti:
IF($B$2:$B$9=1, $A$2:$A$9, "")
Selkokielellä yllä oleva kaava sanoo: Jos sarake B on yhtä suuri kuin 1, palauta arvo sarakkeesta A samalta riviltä; muussa tapauksessa palauta tyhjä merkkijono.
Täydellinen kaava Joukkue 1 ottaa tämän muodon:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=1, $A$2:$A$9, ""))
Vastaavalla tavalla voit saada pilkulla erotetun listan jäsenistä, jotka ovat luokassa Joukkue 2:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=2, $A$2:$A$9, ""))
Huomautus: Excel 365:ssä ja 2021:ssä käytettävissä olevan Dynamic Arrays -ominaisuuden ansiosta tämä toimii tavallisena kaavana, joka näkyy yllä olevassa kuvakaappauksessa. Excel 2019:ssä sinun on syötettävä se perinteisenä array-kaavana painamalla Ctrl + Shift + Enter -pikanäppäintä.
Etsi ja palauta useita osumia pilkulla erotetussa luettelossa
Kuten luultavasti tiedät, Excelin VLOOKUP-toiminto voi palauttaa vain ensimmäisen löydetyn osuman. Entä jos haluat saada kaikki osumat tietylle ID:lle, SKU:lle tai muulle?
Jos haluat tulostaa tulokset erillisiin soluihin, käytä jotakin kaavaa, joka on kuvattu kohdassa VLOOKUP-monien arvojen laskeminen Excelissä.
Jos haluat etsiä ja palauttaa kaikki yhden solun vastaavat arvot pilkulla erotettuna luettelona, käytä TEXTJOIN IF-kaavaa.
Jotta näemme, miten se toimii käytännössä, haetaan luettelo tietyn myyjän ostamista tuotteista alla olevasta esimerkkitaulukosta. Tämä onnistuu helposti seuraavan kaavan avulla:
=TEXTJOIN(", ", TRUE, IF($A$2:$A$12=D2, $B$2:$B$12, "")))
Jossa A2:A12 on myyjän nimi, B2:B12 on tuote ja D2 on kiinnostava myyjä.
Yllä oleva kaava siirtyy E2:een ja tuo kaikki kohdemyyjän osumat D2:een (Adam). Koska soluviittauksia on käytetty fiksusti suhteellisena (kohdemyyjän kohdalla) ja absoluuttisena (myyjien nimien ja tuotteiden kohdalla), kaava kopioidaan oikein alla oleviin soluihin ja se toimii hienosti myös kahden muun myyjän kohdalla:
Huomautus: Kuten edellisessä esimerkissä, tämä toimii tavallisena kaavana Excel 365:ssä ja 2021:ssä ja CSE-kaavana (Ctrl + Shift + Enter ) Excel 2019:ssä.
Kaavan logiikka on täsmälleen sama kuin edellisessä esimerkissä:
IF-lauseessa verrataan jokaista A2:A12:ssa olevaa nimeä D2:ssa olevaan kohdenimeen (meidän tapauksessamme Adam):
IF($A$2:$A$12=D2, $B$2:$B$12, "")
Jos loogisen testin tulokseksi tulee TRUE (eli D2:ssa oleva nimi vastaa sarakkeessa A olevaa nimeä), kaava palauttaa sarakkeen B tuotteen; muussa tapauksessa palautetaan tyhjä merkkijono (""). IF:n tulos on seuraava joukko:
{"";"";"Bananas";"Apples";"";"";"";"Oranges";"";"Lemons";""}
Joukko menee TEXTJOIN-funktioon funktioksi text1 Koska TEXTJOIN on määritetty erottamaan arvot pilkulla ja välilyönnillä (", "), lopputuloksena on tämä merkkijono:
Banaanit, omenat, appelsiinit, sitruunat.
Excel TEXTJOIN ei toimi
Kun TEXTJOIN-kaavasi tuottaa virheen, kyseessä on todennäköisesti jokin seuraavista:
- #NAME? -virhe ilmenee, kun TEXTJOINia käytetään vanhemmassa Excel-versiossa, jossa tätä toimintoa ei tueta (ennen vuotta 2019), tai kun toiminnon nimi on kirjoitettu väärin.
- #VALUE! -virhe tapahtuu, jos tuloksena oleva merkkijono ylittää 32 767 merkkiä.
- #VALUE! -virhe voi ilmetä myös, jos Excel ei tunnista rajaajaa tekstiksi, esimerkiksi jos annat jonkin ei-tulostettavan merkin, kuten CHAR(0).
Näin käytät TEXTJOIN-toimintoa Excelissä. Kiitän sinua lukemisesta ja toivottavasti tapaamme blogissamme ensi viikolla!
Saatavilla olevat lataukset
Excel TEXTJOIN -kaavan esimerkit