• فرمول پیوستن(ادغام) متن و رشته TEXTJOIN برای اکسل

    تابع بسیار مفید برای پیوستن، تجمیع و ادغام چندین رشته و متن به یک رشته همانند عملکرد String Join در زبان های برنامه نویسی
    تابع TEXTJOIN با انتشار اکسل 2016 معرفی شد. این تابع بسیار مفید برای پیوستن چندین متن به یک است. بهترین چیز این است که به ما این امکان را می دهد که طیف وسیعی از مراجع سلولی را برای پیوستن انتخاب کنیم. بنابراین فرمول بسیار صرفه جویی در زمان است. اما مشکل اینجاست که این فرمول در نسخه های پایین تر اکسل مانند 2013، 2010 یا 2007 و غیره موجود نیست.

    در اینجا من سعی کردم این مشکل را با یک UDF (توابع تعریف شده توسط کاربر) حل کنم. من یک تابع در VBA ایجاد کرده ام که تقریباً همان نتیجه را می دهد که TEXTJOIN برمی گرداند.

    همانطور که در تصویر زیر در ستون مشاهده می کنید،  لیست شناسه کارمند موجود است و در محدوده C2 ​​فرمولی " =MyTextJoin(";",1,A2:A15) " برای دریافت شناسه های کارمند جدا شده از نقطه ویرگول در یک واحد قرار داده شده است. سلول.

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

     

    My_Text_Join()  یک تابع تعریف شده توسط کاربر است. برای ایجاد این تابع کد زیر است. برای استفاده از این کد مراحل زیر آمده است-

    • کد زیر را کپی کنید
    • یک کتاب کار جدید باز کنید یا می توانید از کتاب کار موجود خود نیز استفاده کنید.
    • به ویرایشگر ویژوال بیسیک بروید (Alt+F11 را فشار دهید)
    • یک ماژول جدید درج کنید (Alt+I+M را فشار دهید)
    • این کد را جایگذاری کنید.
    • کتاب کار را به عنوان فعال ماکرو ذخیره کنید .
    • به کاربرگ بروید و  My_Text_Join را تایپ کنید و از آن به عنوان تابع عادی اکسل استفاده کنید.

    گزینه تابع صریح 

    My_Text_Join(جداکننده به‌عنوان رشته، ignore_empty به‌عنوان Boolean، text_range به‌عنوان محدوده) به‌عنوان رشته 

    Application.Volatile
    Dim c به‌عنوان محدوده
    Dim n به‌مدت طول
    n = 0
    برای هر c در محدوده text_range
    اگر ignore_empty =
    TruesEmptyc. مقدار) = False سپس
    اگر n = 0 سپس
    My_Text_Join = c. Value
    Else
    My_Text_Join = My_Text_Join & delimiter & c.Value
    End If n
    =
    n + 1
    End If 
    
     Else 
    
     If n = 0 سپس
    My_Text_Join
    = c.Value_Text_Join My_in_T جداکننده و c. Value
    End If
    n = n + 1
    End If
    Next
    End تابع

    نحوه عملکرد

    My_Text_Join (جداکننده، نادیده گرفتن_خالی، محدوده_متن)

    جزئیات پارامتر:

    • جداکننده  : متن/نویسه ای که بین هر مقدار متن در متن حاصل درج می شود. معمولاً از یک جداکننده مانند کاما یا فاصله استفاده می کنید.
    • ignore_empty  : تعیین می کند که آیا مقادیر خالی در رشته به دست آمده وجود دارد یا خیر. TRUE مقادیر خالی را نادیده می گیرد و FALSE شامل مقادیر خالی در نتیجه می شود. همچنین می توانید از 1 و o به جای TRUE استفاده کنید
    • Text_Range  : محدوده اکسل رشته هایی که می خواهید به هم بپیوندید

    برمی گرداند

    تابع My_Text_Join یک مقدار رشته/متن برمی گرداند.

     

    مثال ها:

    فرض کنید لیست نام ماه داریم و باید لیستی را با کاما جدا کنیم. نام ماه در محدوده "A1:A12" موجود است. فرمول " My_Text_Join(,"",1,A1:a12) " را در هر سلول قرار دهید.

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

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

    اگر نام چند ماه را از لیست حذف کنیم، تنها ماه‌هایی که در لیست موجود است طول می‌کشد. زیرا ما از 1 (TRUE) برای ignore_empty استفاده کرده‌ایم،  بنابراین هیچ کاما اضافی نمی‌دهد.

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

    Blanks نادیده گرفته شده است

    اگر در فرمول " My_Text_Join(",",0,A1:a12) " 0 را به جای 1 استفاده کنیم ، کاماهای اضافی را برمی گرداند.

     

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

    Blanks نادیده گرفته نشده است

    نظرات ارسال شده ارسال نظر جدید
    برای تبادل نظر، می بایست در سایت وارد شوید

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