تابع TEXTJOIN در اکسل برای ادغام متن از چندین سلول

  • این را به اشتراک بگذارید
Michael Brown

این آموزش نحوه استفاده از تابع TEXTJOIN برای ادغام متن در اکسل با مثال های عملی را نشان می دهد.

تا همین اواخر، دو روش رایج برای ادغام محتویات سلول در اکسل وجود داشت: الحاق عملگر و عملکرد CONCATENATE. با معرفی TEXTJOIN، به نظر می رسد جایگزین قدرتمندتری ظاهر شده است، که به شما امکان می دهد متن را به شیوه ای انعطاف پذیرتر از جمله هر جداکننده بین آن بپیوندید. اما در حقیقت، چیزهای بیشتری برای آن وجود دارد!

    عملکرد Excel TEXTJOIN

    TEXTJOIN در اکسل رشته های متنی را از چندین سلول یا محدوده ادغام می کند و مقادیر ترکیبی را با هر جداکننده جدا می کند. که شما مشخص می کنید می‌تواند سلول‌های خالی را نادیده بگیرد یا در نتیجه شامل شود.

    این تابع در Excel برای Office 365، Excel 2021 و Excel 2019 موجود است.

    سینتکس تابع TEXTJOIN به شرح زیر است. :

    TEXTJOIN(جداکننده، ignore_empty، text1، [text2]، …)

    Where:

    • Delimiter (الزامی) - جداکننده بین هر مقدار متن است که ترکیب می کنید معمولاً به‌عنوان یک رشته متن محصور در گیومه‌های دوتایی یا اشاره به سلولی حاوی یک رشته متن ارائه می‌شود. عددی که به‌عنوان جداکننده ارائه می‌شود، به‌عنوان متن در نظر گرفته می‌شود.
    • Ignore_Empty (الزامی) - تعیین می‌کند که آیا سلول‌های خالی نادیده گرفته شوند یا نه:
      • درست - نادیده گرفتن سلول‌های خالی.
      • FALSE - شامل سلول های خالی در رشته به دست آمده است.
    • Text1 (الزامی) - اولین مقدار برای پیوستن. می تواند به عنوان یک رشته متن، یک مرجع به یک سلول حاوی یک رشته، یا آرایه ای از رشته ها مانند یک محدوده از سلول ها ارائه شود.
    • Text2 ، ... (اختیاری) - مقادیر متن اضافی به هم ملحق شوند. حداکثر 252 آرگومان متنی مجاز است، از جمله text1 .

    به عنوان مثال، اجازه دهید بخش های آدرس از سلول های B2، C2 و D2 را با هم در یک سلول ترکیب کنیم و مقادیر را از هم جدا کنیم. با یک کاما و یک فاصله:

    با تابع CONCATENATE، باید هر سلول را جداگانه مشخص کنید و بعد از هر مرجع یک جداکننده (") قرار دهید، که ممکن است هنگام ادغام محتویات بسیاری آزاردهنده باشد. سلول ها:

    =CONCATENATE(A2, ", ", B2, ", ", C2)

    با Excel TEXTJOIN، شما جدا کننده را فقط یک بار در آرگومان اول مشخص می کنید و محدوده ای از سلول ها را برای آرگومان سوم ارائه می کنید:

    =TEXTJOIN(", ", TRUE, A2:C2)

    TEXTJOIN در Excel - 6 موردی که باید به خاطر بسپارید

    برای استفاده موثر از TEXTJOIN در کاربرگ های خود، چند نکته مهم وجود دارد که باید به آنها توجه کنید:

    1. TEXTJOIN جدید است تابع، که فقط در Excel 2019 موجود است - Excel 365. در نسخه های قبلی اکسل، لطفاً از تابع CONCATENATE یا "&" استفاده کنید. به جای عملگر.
    2. در نسخه های جدید Excel، می توانید از تابع CONCAT نیز برای به هم پیوستن مقادیر از سلول ها و محدوده های جداگانه استفاده کنید، اما هیچ گزینه ای برای جداکننده یا سلول های خالی وجود ندارد.
    3. هر شماره ارائه شده است. به TEXTJOIN برای جداکننده یا متن آرگومان‌ها به متن تبدیل می‌شوند.
    4. اگر جداکننده مشخص نشده باشد یا یک رشته خالی باشد ("")، مقادیر متن بدون هیچ جداکننده به هم متصل می‌شوند.
    5. این تابع می‌تواند تا 252 آرگومان متنی را مدیریت می کند.
    6. رشته حاصل می تواند حداکثر 32767 کاراکتر داشته باشد که محدودیت سلول در اکسل است. اگر از این حد فراتر رفت، یک فرمول TEXTJOIN مقدار #VALUE را برمی‌گرداند! خطا.

    نحوه پیوستن متن در اکسل - نمونه فرمول

    برای درک بهتر تمام مزایای TEXTJOIN، بیایید نگاهی به نحوه استفاده از تابع در سناریوهای واقعی بیاندازیم. .

    تبدیل ستون به لیست جدا شده با کاما

    وقتی به دنبال الحاق یک لیست عمودی هستید که مقادیر را با کاما، نقطه ویرگول یا هر جداکننده دیگری از هم جدا می کند، TEXTJOIN تابع مناسبی برای استفاده است.

    برای این مثال، بردها و باخت های هر تیم را از جدول زیر به هم پیوند می دهیم. این را می توان با فرمول های زیر انجام داد، که فقط در محدوده سلول هایی که به هم متصل شده اند متفاوت است.

    برای تیم 1:

    =TEXTJOIN(",", FALSE, B2:B6)

    برای تیم 2:

    =TEXTJOIN(",", FALSE, C2:C6)

    و غیره.

    در تمامی فرمول ها از آرگومان های زیر استفاده می شود:

    • Delimiter - a کاما ("").
    • Ignore_empty روی FALSE تنظیم شده است تا سلول های خالی را در بر بگیرد زیرا باید نشان دهیم کدام بازی ها بازی نشده اند.

    به عنوان در نتیجه، چهار لیست جدا شده با کاما دریافت خواهید کرد که برد و باخت هر تیم را به شکل فشرده نشان می دهد:

    به سلول‌ها با جداکننده‌های مختلف بپیوندید

    در شرایطی که نیاز دارید مقادیر ترکیبی را با جداکننده‌های مختلف جدا کنید، می‌توانید چندین جداکننده را به عنوان یک ثابت آرایه وارد کنید یا هر جداکننده را در یک سلول جداگانه وارد کنید. و از یک مرجع محدوده برای آرگومان جداکننده استفاده کنید.

    فرض کنید می‌خواهید سلول‌های حاوی قسمت‌های مختلف نام را به هم بپیوندید و نتیجه را در این قالب دریافت کنید: نام خانوادگی ، نام نام میانی .

    همانطور که می بینید، نام خانوادگی و نام با کاما و فاصله (") از هم جدا می شوند، در حالی که نام و نام میانی با فاصله از هم جدا می شوند. (" ") فقط. بنابراین، ما این دو جداکننده را در یک آرایه ثابت {", "," "} قرار می دهیم و فرمول زیر را دریافت می کنیم:

    =TEXTJOIN({", "," "}, TRUE, A2:C2)

    که در آن A2:C2 قطعات نامی هستند که باید ترکیب شوند.

    از طرف دیگر، می‌توانید جداکننده‌ها را بدون علامت نقل قول در برخی سلول‌های خالی تایپ کنید (مثلاً یک کاما و یک فاصله در F3 و یک فاصله در G3) و از محدوده $F$3:$G$3 استفاده کنید (لطفاً توجه داشته باشید مرجع سلول مطلق) برای آرگومان جداکننده :

    =TEXTJOIN($F$3:$G$3, TRUE, A2:C2)

    با استفاده از این رویکرد کلی، می توانید محتویات سلول را به اشکال مختلف ادغام کنید.

    به عنوان مثال، اگر می‌خواهید نتیجه را با فرمت نام حرف اول نام خانوادگی داشته باشید، سپس از تابع LEFT برای استخراج اولین کاراکتر (ابتدال) استفاده کنید. از سلول C2 در مورد جداکننده‌ها، بین نام First و حرف اول میانی یک فاصله (" ") قرار می‌دهیم. آنقطه و یک فاصله (.") بین نام اولیه و نام خانوادگی:

    =TEXTJOIN({" ",". "}, TRUE, B2, LEFT(C2,1), A2)

    به متن و تاریخ در اکسل بپیوندید

    در یک مورد خاص زمانی که در حال ادغام هستید متن و تاریخ، ارائه تاریخ به طور مستقیم به فرمول TEXTJOIN کار نخواهد کرد. همانطور که ممکن است به یاد داشته باشید، اکسل تاریخ ها را به عنوان شماره سریال ذخیره می کند، بنابراین فرمول شما عددی را نشان می دهد که تاریخ را همانطور که در تصویر زیر نشان داده شده است نشان می دهد:

    =TEXTJOIN(" ", TRUE, A2:B2)

    برای رفع این مشکل، باید تبدیل کنید. تاریخ را در یک رشته متن قبل از پیوستن به آن. و در اینجا تابع TEXT با کد قالب مورد نظر (در مورد ما "mm/dd/yyyy") مفید است:

    =TEXTJOIN(" ", TRUE, A2, TEXT(B2, "mm/dd/yyyy"))

    ادغام متن با شکست خط

    اگر می خواهید متن را در اکسل ادغام کنید تا هر مقدار در یک خط جدید شروع شود، از CHAR(10) به عنوان جداکننده استفاده کنید (که در آن 10 یک کاراکتر فید خط است).

    به عنوان مثال، برای ترکیب متن از سلول‌های A2 و B2 مقادیر را با یک شکست خط جدا می‌کنند، این فرمولی است که باید استفاده کنید:

    =TEXTJOIN(CHAR(10), TRUE, A2:B2)

    نکته. برای اینکه نتیجه در چندین خط مانند تصویر بالا نمایش داده شود، مطمئن شوید که ویژگی Wrap text روشن است.

    TEXTJOIN IF برای ادغام متن با شرایط

    به دلیل توانایی Excel TEXTJOIN برای مدیریت آرایه های رشته ها، همچنین می توان از آن برای ادغام مشروط محتویات دو یا چند سلول استفاده کرد. برای انجام این کار، از تابع IF برای ارزیابی محدوده ای از سلول ها استفاده کنید و آرایه ای از مقادیر را که شرایط را برآورده می کنند به آرگومان text1 برگردانید.TEXTJOIN.

    از جدول نشان داده شده در تصویر زیر، فرض کنید می خواهید فهرستی از اعضای تیم 1 را بازیابی کنید. برای رسیدن به این هدف، عبارت IF زیر را در آرگومان text1 قرار دهید:

    IF($B$2:$B$9=1, $A$2:$A$9, "")

    در زبان انگلیسی ساده، فرمول بالا می گوید: اگر ستون B برابر با 1 باشد، یک عدد را برگردانید. مقدار از ستون A در همان ردیف؛ در غیر این صورت یک رشته خالی برگردانید.

    فرمول کامل تیم 1 این شکل را دارد:

    =TEXTJOIN(", ", TRUE, IF($B$2:$B$9=1, $A$2:$A$9, ""))

    به روشی مشابه، می توانید یک لیست اعضای تیم 2 با کاما جدا شده:

    =TEXTJOIN(", ", TRUE, IF($B$2:$B$9=2, $A$2:$A$9, ""))

    توجه داشته باشید. با توجه به ویژگی Dynamic Arrays موجود در اکسل 365 و 2021، این به عنوان یک فرمول معمولی عمل می کند که در تصویر بالا نشان داده شده است. در اکسل 2019، باید با فشار دادن کلیدهای میانبر Ctrl + Shift + Enter، آن را به عنوان یک فرمول آرایه سنتی وارد کنید.

    جستجو و بازگرداندن چندین منطبق در لیست جدا شده با کاما

    همانطور که احتمالاً می دانید، تابع اکسل VLOOKUP فقط می تواند اولین تطابق یافت شده را برگرداند. اما اگر نیاز به دریافت همه موارد منطبق برای یک ID خاص، SKU یا چیز دیگری دارید، چه؟

    برای خروجی نتایج در سلول های جداگانه، از یکی از فرمول های توضیح داده شده در نحوه VLOOKUP چندین مقدار در اکسل استفاده کنید.

    برای جستجو و برگرداندن همه مقادیر منطبق در یک سلول به عنوان یک لیست جدا شده با کاما، از فرمول TEXTJOIN IF استفاده کنید.

    برای اینکه ببینید در عمل چگونه کار می کند، بیایید لیستی از آنها را بازیابی کنیم. محصولات خریداری شده توسط فروشنده معین از جدول نمونهزیر این کار را می توان به راحتی با فرمول زیر انجام داد:

    =TEXTJOIN(", ", TRUE, IF($A$2:$A$12=D2, $B$2:$B$12, ""))

    که در آن A2:A12 نام فروشنده است، B2:B12 محصولات، و D2 فروشنده مورد علاقه است.

    فرمول بالا به E2 می رود و تمام موارد مطابق را برای فروشنده هدف در D2 (آدام) می آورد. به دلیل استفاده هوشمندانه از مراجع سلولی نسبی (برای فروشنده هدف) و مطلق (برای نام و محصولات فروشنده)، فرمول به درستی در سلول های زیر کپی می شود و برای دو فروشنده دیگر نیز به خوبی کار می کند:

    توجه داشته باشید. مانند مثال قبلی، این به عنوان یک فرمول معمولی در اکسل 365 و 2021 و به عنوان یک فرمول CSE (Ctrl + Shift + Enter ) در اکسل 2019 کار می کند.

    منطق فرمول دقیقاً همان است که در مثال قبلی:

    دستور IF هر نام را در A2:A12 با نام هدف در D2 مقایسه می کند (در مورد ما Adam):

    IF($A$2:$A$12=D2, $B$2:$B$12, "")

    اگر آزمون منطقی ارزیابی شود به TRUE (یعنی نام در D2 با نام ستون A مطابقت دارد)، فرمول محصولی را از ستون B برمی‌گرداند. در غیر این صورت یک رشته خالی ("") برگردانده می شود. نتیجه IF آرایه زیر است:

    {"";"";"Bananas";"Apples";"";"";"";"Oranges";"";"Lemons";""}

    آرایه به عنوان آرگومان text1 به تابع TEXTJOIN می رود. و از آنجایی که TEXTJOIN برای جدا کردن مقادیر با کاما و فاصله (") پیکربندی شده است، این رشته را به عنوان نتیجه نهایی دریافت می کنیم:

    موز، سیب، پرتقال، لیمو

    Excel TEXTJOIN کار نمی کند

    وقتی فرمول TEXTJOIN شما منجر به خطا می شود، به احتمال زیادیکی از موارد زیر باشد:

    • #NAME؟ خطا زمانی رخ می دهد که TEXTJOIN در نسخه قدیمی اکسل استفاده می شود که این تابع پشتیبانی نمی شود (قبل از 2019) یا زمانی که نام تابع اشتباه املایی شده باشد.
    • #VALUE! اگر رشته حاصل از 32767 کاراکتر بیشتر شود، خطا رخ می دهد.
    • #VALUE! اگر اکسل جداکننده را به عنوان متن تشخیص ندهد، ممکن است خطا نیز رخ دهد، به عنوان مثال اگر یک کاراکتر غیرقابل چاپ مانند CHAR(0) ارائه دهید.

    این نحوه استفاده از تابع TEXTJOIN در اکسل است. از خواندن شما سپاسگزارم و امیدوارم هفته آینده شما را در وبلاگ خود ببینم!

    دانلودهای موجود

    نمونه های فرمول Excel TEXTJOIN

    مایکل براون یک علاقه‌مند به فناوری است که علاقه زیادی به ساده‌سازی فرآیندهای پیچیده با استفاده از ابزارهای نرم‌افزاری دارد. او با بیش از یک دهه تجربه در صنعت فناوری، مهارت های خود را در Microsoft Excel و Outlook و همچنین Google Sheets و Docs تقویت کرده است. وبلاگ مایکل اختصاص داده شده است تا دانش و تخصص خود را با دیگران به اشتراک بگذارد و نکات و آموزش هایی را برای بهبود بهره وری و کارایی ارائه دهد. چه یک حرفه ای با تجربه باشید و چه مبتدی، وبلاگ مایکل، بینش های ارزشمند و توصیه های عملی را برای استفاده حداکثری از این ابزارهای نرم افزاری ضروری ارائه می دهد.