INHOUDSOPGAWE
Die tutoriaal wys hoe om die TEXTJOIN-funksie te gebruik om teks in Excel met praktiese voorbeelde saam te voeg.
Tot onlangs was daar twee algemene metodes om selvinhoud in Excel saam te voeg: die aaneenskakeling operateur en CONCATENATE-funksie. Met die bekendstelling van TEXTJOIN, lyk dit of 'n kragtiger alternatief verskyn het, wat jou in staat stel om teks op 'n meer buigsame manier aan te sluit, insluitend enige afbakening tussenin. Maar in werklikheid is daar baie meer daaraan!
Excel TEXTJOIN-funksie
TEXTJOIN in Excel voeg teksstringe van veelvuldige selle of reekse saam en skei die gekombineerde waardes met enige skeidingsteken wat jy spesifiseer. Dit kan leë selle óf ignoreer óf in die resultaat insluit.
Die funksie is beskikbaar in Excel vir Office 365, Excel 2021 en Excel 2019.
Die sintaksis van die TEXTJOIN-funksie is soos volg :
TEXTJOIN(delimiter, ignore_empty, text1, [text2], …)Waar:
- Delimiter (vereis) - is 'n skeiding tussen elke tekswaarde wat jy kombineer. Gewoonlik word dit verskaf as 'n teksstring ingesluit in dubbele aanhalingstekens of 'n verwysing na 'n sel wat 'n teksstring bevat. 'n Nommer wat as 'n skeidingsteken verskaf word, word as teks behandel.
- Ignoreer_leeg (vereis) - Bepaal of leë selle moet ignoreer of nie:
- WAAR - ignoreer enige leë selle.
- ONWAAR - sluit leë selle in die resulterende string in.
- Teks1 (vereis) - eerste waarde om aan te sluit. Kan verskaf word as 'n teksstring, 'n verwysing na 'n sel wat 'n string bevat, of 'n reeks stringe soos 'n reeks selle.
- Teks2 , … (opsioneel) - addisionele tekswaardes saamgevoeg te word. 'n Maksimum van 252 teksargumente word toegelaat, insluitend teks1 .
Kom ons kombineer as voorbeeld adresdele van selle B2, C2 en D2 saam in een sel, wat die waardes skei met 'n komma en 'n spasie:
Met die CONCATENATE-funksie moet jy elke sel individueel spesifiseer en 'n afbakener (", ") na elke verwysing plaas, wat dalk lastig kan wees wanneer die inhoud van baie saamgevoeg word selle:
=CONCATENATE(A2, ", ", B2, ", ", C2)
Met Excel TEXTJOIN spesifiseer jy die skeidingsteken net een keer in die eerste argument, en verskaf 'n reeks selle vir die derde argument:
=TEXTJOIN(", ", TRUE, A2:C2)
TEXTJOIN in Excel - 6 dinge om te onthou
Om TEXTJOIN effektief in jou werkblaaie te gebruik, is daar 'n paar belangrike punte om van kennis te neem:
- TEXTJOIN is 'n nuwe funksie, wat slegs beskikbaar is in Excel 2019 - Excel 365. In vroeëre Excel-weergawes, gebruik asseblief die CONCATENATE-funksie of die "&" operateur plaas.
- In nuwe weergawes van Excel, kan jy ook die CONCAT-funksie gebruik om waardes van afsonderlike selle en reekse aaneen te koppel, maar met geen opsies vir skeidingstekens of leë selle nie.
- Enige nommer verskaf om TEXTJOIN vir die skenner of teks argumente word omgeskakel na teks.
- As afgrenser nie gespesifiseer is nie of 'n leë string ("") is, word tekswaardes aaneengeskakel sonder enige skeidingsteken.
- Die funksie kan hanteer tot 252 teksargumente.
- Die gevolglike string kan 'n maksimum van 32 767 karakters bevat, wat die sellimiet in Excel is. As hierdie limiet oorskry word, gee 'n TEXTJOIN-formule die #WAARDE! fout.
Hoe om teks in Excel aan te sluit - formulevoorbeelde
Om al die voordele van TEXTJOIN beter te verstaan, kom ons kyk hoe om die funksie in werklike scenario's te gebruik .
Omskep kolom na kommageskeide lys
Wanneer jy 'n vertikale lys wil aaneenskakel wat die waardes deur 'n komma, kommapunt of enige ander skeidingsteken skei, is TEXTJOIN die regte funksie om te gebruik.
Vir hierdie voorbeeld sal ons oorwinnings en verliese van elke span uit die tabel hieronder saamvoeg. Dit kan gedoen word met die volgende formules, wat slegs verskil in die reeks selle wat verbind is.
Vir Span 1:
=TEXTJOIN(",", FALSE, B2:B6)
Vir Span 2:
=TEXTJOIN(",", FALSE, C2:C6)
Ensovoorts.
In al die formules word die volgende argumente gebruik:
- Delimiter - a komma (",").
- Ignoreer_leeg is op ONWAAR gestel om leë selle in te sluit omdat ons moet wys watter speletjies nie gespeel is nie.
As die gevolglik sal jy vier komma-geskeide lyste kry wat oorwinnings en verliese van elke span in 'n kompakte vorm verteenwoordig:
Verbind selle met verskillende skeidings
In 'n situasie wanneer jy die gekombineerde waardes met verskillende skeidings moet skei, kan jy óf verskeie skeidingstekens as 'n skikkingkonstante verskaf óf elke skeidingsmerk in 'n aparte sel invoer en gebruik 'n reeksverwysing vir die skeidingsteken -argument.
Gestel jy wil by selle aansluit wat verskillende naamdele bevat en die resultaat in hierdie formaat kry: Vannaam , Voornaam Middelnaam .
Soos jy kan sien, word die Van en Voornaam deur 'n komma en 'n spasie (", ") geskei terwyl die Voornaam en Middelnaam deur 'n spasie (" ") enigste. Dus, ons sluit hierdie twee skeidingstekens in in 'n skikkingkonstante {", "," "} en kry die volgende formule:
=TEXTJOIN({", "," "}, TRUE, A2:C2)
Waar A2:C2 die naamdele is wat gekombineer moet word.
Alternatiewelik kan jy die skeidingstekens sonder aanhalingstekens in sommige leë selle tik (sê 'n komma en 'n spasie in F3 en 'n spasie in G3) en die reeks $F$3:$G$3 gebruik (let asseblief op die absolute selverwysings) vir die delimiter -argument:
=TEXTJOIN($F$3:$G$3, TRUE, A2:C2)
Deur hierdie algemene benadering te gebruik, kan jy selvinhoud in verskeie vorme saamsmelt.
Byvoorbeeld, as jy die resultaat in die Voornaam Middelletter Vannaam -formaat wil hê, gebruik dan die LEFT-funksie om die eerste karakter (die voorletter) te onttrek. uit sel C2. Wat die afbakeners betref, plaas ons 'n spasie (" ") tussen die Voornaam en die Middelste voorletter; apunt en 'n spasie (". ") tussen die Aanvanklike en die Van:
=TEXTJOIN({" ",". "}, TRUE, B2, LEFT(C2,1), A2)
Sluit teks en datums in Excel aan
In 'n spesifieke geval wanneer jy saamsmelt teks en datums, die verskaffing van datums direk aan 'n TEXTJOIN-formule sal nie werk nie. Soos jy dalk onthou, berg Excel datums as reeksnommers, so jou formule sal 'n nommer gee wat die datum verteenwoordig soos in die skermkiekie hieronder getoon:
=TEXTJOIN(" ", TRUE, A2:B2)
Om dit reg te stel, moet jy omskakel die datum in 'n teksstring voor dit aansluit. En hier kom die TEKS-funksie met die verlangde formaatkode ("mm/dd/jjjj" in ons geval) handig te pas:
=TEXTJOIN(" ", TRUE, A2, TEXT(B2, "mm/dd/yyyy"))
Voeg teks saam met reëlbreuke
As jy teks in Excel wil saamvoeg sodat elke waarde in 'n nuwe reël begin, gebruik CHAR(10) as die skeidingsteken (waar 10 'n lynaanvoerkarakter is).
Om byvoorbeeld teks van selle A2 en B2 wat die waardes deur 'n lynbreuk skei, dit is die formule om te gebruik:
=TEXTJOIN(CHAR(10), TRUE, A2:B2)
Wenk. Vir die resultaat om in veelvuldige reëls te vertoon soos in die skermkiekie hierbo getoon, maak seker dat die Wikkel teks-funksie aangeskakel is.
TEXTJOIN IF om teks met voorwaardes saam te voeg
As gevolg van die vermoë van Excel TEXTJOIN om skikkings stringe te hanteer, kan dit ook gebruik word om die inhoud van twee of meer selle voorwaardelik saam te voeg. Om dit te laat doen, gebruik die IF-funksie om 'n reeks selle te evalueer en 'n reeks waardes wat aan die voorwaarde voldoen na die text1 -argument vanTEKSSLUIT.
Veronderstel jy wil 'n lys van Span 1 -lede uit die tabel wat in die skermkiekie hieronder gewys word. Om dit te bereik, nes die volgende IF-stelling in die text1 -argument:
IF($B$2:$B$9=1, $A$2:$A$9, "")
In gewone Engels sê die formule hierbo: As kolom B gelyk is aan 1, gee 'n waarde van kolom A in dieselfde ry; gee anders 'n leë string terug.
Die volledige formule vir Span 1 neem hierdie vorm aan:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=1, $A$2:$A$9, ""))
Op 'n soortgelyke manier kan jy 'n komma-geskeide lys van die lede van Span 2:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=2, $A$2:$A$9, ""))
Let wel. As gevolg van die Dynamic Arrays-funksie wat in Excel 365 en 2021 beskikbaar is, werk dit as 'n gewone formule, wat in die skermkiekie hierbo gewys word. In Excel 2019 moet jy dit as 'n tradisionele skikkingsformule invoer deur die Ctrl + Shift + Enter-kortpad te druk.
Soek en gee veelvuldige passings in kommageskeide lys terug
Soos jy waarskynlik weet, is die Excel VLOOKUP-funksie kan slegs die eerste gevind passing terugstuur. Maar wat as jy alle passings vir 'n spesifieke ID, SKU of iets anders moet kry?
Om die resultate in afsonderlike selle uit te voer, gebruik een van die formules wat beskryf word in Hoe om veelvuldige waardes op te soek in Excel.
Om alle ooreenstemmende waardes in 'n enkele sel as 'n komma-geskeide lys op te soek en terug te gee, gebruik die TEXTJOIN IF formule.
Om te sien hoe dit in die praktyk werk, kom ons haal 'n lys van produkte wat deur 'n gegewe verkoper van die voorbeeldtabel gekoop ishieronder. Dit kan maklik gedoen word met die volgende formule:
=TEXTJOIN(", ", TRUE, IF($A$2:$A$12=D2, $B$2:$B$12, ""))
Waar A2:A12 verkopername is, B2:B12 produkte is en D2 die verkoper van belang is.
Bogenoemde formule gaan na E2 en bring al die vuurhoutjies vir die teikenverkoper in D2 (Adam). As gevolg van die slim gebruik van relatiewe (vir die teikenverkoper) en absolute (vir die verkopername en produkte) selverwysings, kopieer die formule korrek na die onderstaande selle en werk dit ook goed vir die ander twee verkopers:
Let wel. Soos met die vorige voorbeeld, werk dit as 'n gewone formule in Excel 365 en 2021, en as 'n CSE-formule (Ctrl + Shift + Enter ) in Excel 2019.
Die formule se logika is presies dieselfde as in die vorige voorbeeld:
Die IF-stelling vergelyk elke naam in A2:A12 met die teikennaam in D2 (Adam in ons geval):
IF($A$2:$A$12=D2, $B$2:$B$12, "")
As die logiese toets evalueer na WAAR (m.a.w. die naam in D2 pas by die naam in kolom A), gee die formule 'n produk van kolom B terug; anders word 'n leë string ("") teruggestuur. Die resultaat van IF is die volgende skikking:
{"";"";"Bananas";"Apples";"";"";"";"Oranges";"";"Lemons";""}
Die skikking gaan na die TEXTJOIN-funksie as die text1 -argument. En omdat TEXTJOIN opgestel is om die waardes met 'n komma en 'n spasie (", ") te skei, kry ons hierdie string as die finale resultaat:
Piesangs, Appels, Lemoene, Suurlemoene
Excel TEXTJOIN werk nie
Wanneer jou TEXTJOIN-formule 'n fout tot gevolg het, is dit heel waarskynlikom een van die volgende te wees:
- #NAAM? fout kom voor wanneer TEXTJOIN in 'n ouer weergawe van Excel gebruik word waar hierdie funksie nie ondersteun word nie (voor 2019) of wanneer die funksie se naam verkeerd gespel is.
- #VALUE! fout vind plaas as die resulterende string 32 767 karakters oorskry.
- #VALUE! fout kan ook voorkom as Excel nie die skeidingsteken as teks herken nie, byvoorbeeld as jy een of ander nie-drukbare karakter verskaf soos CHAR(0).
Dis hoe om die TEXTJOIN-funksie in Excel te gebruik. Ek bedank jou vir die lees en hoop om jou volgende week op ons blog te sien!
Beskikbare aflaaie
Excel TEXTJOIN formule voorbeelde