سبد خرید
0

محصولی در سبد خرید نیست.

بازگشت به فروشگاه

ترکیب Mail Merge ورد و اکسل

ابزار Mail Merge
۴.۲/۵ - (۸ امتیاز)

ابزار Mail Merge در ورد

وقتی میخوایم سندی رو با داده های متغیر و به تعداد زیاد تهیه کنیم یکی از بهترین راه ها استفاده از Mail Merge است. این ابزار در نرم افزار Word وجود داره که میتونه وصل بشه به اکسل و داده های متغیر رو فراخوانی کنه و سند مورد نظر رو تولید کنه. کارهایی مشابه موارد زیر رو میتونیم با استفاده از این ابزار انجام بدیم:

  • صدور یک مدرک آموزشی برای صد نفر از شرکت کنندگان
  • صدور کارنامه برای دانش آموزان یک مدرسه
  • صدور فیش حقوقی
  • صدور دعوتنامه، نامه و …
  • صدور فاکتور برای مشتریان مجموعه و …

این مقاله طی ۲ بخش ارائه میشه:

  1. معرفی و نحوه استفاده از Mail Merge و ارتباطش با اکسل
  2. حل مشکل فرمت دهی داده ها در Word

بخش اول: معرفی و نحوه استفاده از Mail Merge و ارتباطش با اکسل

فرض کنید میخواهیم فاکتورهای مشتریانمون رو به آدرس های اونها پست کنیم. پاکت های نامه رو آماده کردیم و میخوایم برای هر مشتری یک لیبل که شامل اطلاعات گیرنده مثل اسم، آدرس و سایر اطلاعات هر مشتری هست آماده کنیم. برای تهیه و چاپ این لیبل (که بعدا بچسبونیم روی پاکت نامه) از این ابزار استفاده میکنیم و با چند کلیک همه لیبل های مورد نیاز صادر میشه. برای استفاده از این ابزار به چه چیزی نیاز داریم؟

  • دیتابیس داده های متغیر ( در این مثال اسم، آدرس، تلفن و … – مشابه شکل ۱)
  • تمپلیت سند مورد نظر در Word ( در این مثال فرمت خام پاکت برای قسمت گیرنده – مشابه شکل ۲)
Mail Merge  نمونه دیتابیس از اطلاعات متغیر سند مورد نظر

شکل ۱ – Mail Merge  نمونه دیتابیس از اطلاعات متغیر سند مورد نظر

Mail Merge نمونه خام سند مورد نظر (در اینجا پاکت نامه)

شکل ۲ – Mail Merge- نمونه خام سند مورد نظر (در اینجا پاکت نامه)

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

  در ادامه نحوه استفاده از این ابزار و صدور همه لیبل های مورد نظر رو شرح میدیم. بعد از  آماده کردن دیتابیس داده های متغیر و تمپلیت سند مورد نظر، فایل تمپلیت لیبل مورد نظر رو باز میکنیم و از تب Mailings روی گزینه Start Mail Merge کلیک میکنیم. از منوی باز شده، روی گزینه Step-by-Step Mail Merge Wizard کلیک میکنیم.

شکل ۳- Mail Merge – انتخاب ویزارد

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

  همچنین در نرم افزار ورد یک سری  تمپلیت مثل نامه، ایمیل، برچسب و … وجود داره که ساختار مشخصی دارن و قابل استفاده هستن. اما ما در اینجا از تمپلیت خودمون استفاده کردیم که نشون بدیم هیچ محدودیتی برای فایل ورد وجود نداره و هر ساختاری میتونه داشته باشه. با زدن این گزینه ویزارد Mail Merge در سمت راست صفحه باز میشه و ۶ گام وجود داره که باید طی بشه. گام اول: انتخاب سند مورد نظر (در اینجا Letters رو انتخاب میکنیم که بتونیم هر ساختاری رو تعیین کنیم و Next رو میزنیم)

شکل ۴ – Mail Merge – ویزارد گام اول

ویزارد گام دوم

گام دوم: در نوار نمایش داده شده از ما میخواد که تمپلیت نامه مورد نظر رو مشخص کنیم. چون ما از ابتدا فایل تمپلیت رو باز کردیم، گزینه Use the current document رو انتخاب میکنیم و Next رو میزنیم.

شکل ۵ Mail Merge – ویزارد گام دوم

گام سوم، تعیین فایل داده های متغیر

گام سوم: در این مرحله باید فایل داده های متغیر در نامه رو معرفی کنیم. روی Browse کلیک میکنیم و فایل اکسل دیتابیس رو انتخاب میکنیم. بعد از انتخاب فایل اکسل و انتخاب شیت مورد نظر از فایل، پنجره شکل ۶ نمایش داده میشه. OK رو میزنیم و به گام بعد میریم.

شکل ۶- Mail Merge- گام سوم، تعیین فایل داده های متغیر

گام چهارم تعیین داده های متغیر

در این قسمت میتونیم افرادی رو که نمیخوایم از تغییر فیلتر، مشخص کنیم، یا اینکه داده ها رو مرتب کنیم و تکراری ها رو حذف کنیم و …   گام چهارم: در گام چهارم از پنجره نمایش داده شده باید داده های متغیر در متن نامه رو مشخص کنیم برای این کار روی گزینه More Items کلیک میکنیم.

شکل ۷-Mail Merge – گام چهارم تعیین داده های متغیر

میل مرج ورد و اکسل
گام پنجم بررسی نامه های ایجاد شده

از پنجره نمایش داده شده، باید متغیرها رو تعیین کنیم. برای این کار طبق زیر عمل میکنیم: ابتدا جلوب فیلد مورد نظر کلیک میکنیم و نشانگر موس رو در مکان مورد نظر (مثلا جلوی نام خانوادگی) قرار میدیم. بعد روی More Items کلیک میکنیم و از پنجره نمایش داده شده، فیلد مورد نظر (نام گیرنده) که باید جلوی نام خانوادگی قرار بگیره رو کلیک میکنیم. برای همه قسمت های لیبل همین کار رو مطابق ویدئو زیر تکرار میکنیم و Next رو میزنیم. گام پنجم: در این مرحله میتونیم لیبل های ایجاد شده رو ببینیم. برای این کار کافیه روی علامت >> بزنیم و لیبل های ایجاد شده رو ملاحظه کنیم.

شکل ۸- Mail Merge – گام پنجم بررسی نامه های ایجاد شده

نکته: در این مرحله میتونیم با بررسی هر لیبل، تغییرات مورد نیاز رو اعمال کنیم و از قسمت Exclude this recipient برخی دریافت کنندگان رو حذف میکنیم.
گام ششم مشاهده همخ لیبل های ایجاد شده

  گام ششم و آخر: در این مرحله میتونیم همه یا برخی از لیبل های ایجاد شده رو مشاهده کنیم. برای مشاهده لیبل ها روی گزینه Edit Individual letters کلیک میکنیم و از پنجره نمایش داده شده تعیین میکنیم که همه (All) لیبل ها رو ببینیم یا برخی از لیبل ها نمایش داده بشه.

شکل ۹ – Mail Merge – گام ششم مشاهده همخ لیبل های ایجاد شده

با زدن All یک فایل ورد ایجاد شده که در هر صفحه یک لیبل با اطلاعات مورد نظر ایجاد شده که میتونیم پرینت بگیریم.

بخش دوم: حل مشکل فرمت دهی داده ها در Word

مسئله ای که در مورد استفاده از mail merge مطرحه، اینه که داده هایی که در اکسل فرمت خاصی دارن، در سند ورد بدون فرمت منتقل میشن. مثلا اگر عددی جدا کننده سه رقم سه رقم داره، در ورد بدون این جداکننده دیده میشه. یا مثلا اگر عددی بصورت درصد نمایش داده میشه، با مقدار واقعی در سند ورد منتقل میشه. یعنی مقدار ۳۰% بصورت ۰.۳ نمایش داده میشه. پس هدف این هست که داده ها با فرمت موجود در اکسل، دقیقا به همان صورت در ورد هم نمایش داده بشن. به مثال زیر توجه کنید:

شکل 9 - تغییر فرمت داده های موجود در اکسل در زمان انتقال به ورد
شکل ۹ – تغییر فرمت داده های موجود در اکسل در زمان انتقال به ورد

  همونطور که در شکل ۹ مشخص شده است، هم ستون کد ملی و هم ستون مبلغ، هر دو فرمت سل دارن (فرمت جدا کننده سه رقم و فرمت مربوط به کد ملی) و زمانی که در فایل ورد فراخوانی شده اند، بدون فرمت انتقال داده شده اند. در حالیکه میخواهیم هم شماره ملی و هم مبلغ مورد نظر، با فرمت های نمایش داده شده در اکسل، در ورد نیز نمایش داده شوند. برای حل این مسئله میتونیم از طریق DDE (Dynamic Data Exchange) به فایل اکسل متصل بشیم.

روش اول: نحوه استفاده از Dynamic Data Exchange برای اتصال به شیت اکسل

قبل از اینکه فرایند Mail Merge رو شروع کنیم در نرم افزار Word این تنظیمات رو انجام میدیم:

    1. از مسیر File/ Options/ Advanced تیک گزینه زیر رو میزنیم:              Confirm file format conversion on open
شکل ۱۰- تنظیمات تغییر فرمت
  • حالا مراحل mail merge رو شروع میکنیم. برای دیدن جزییات مراحل حتما مقاله مربوط به mail merge رو مطالعه کنید. وقتی نوبت به انتخاب گیرنده ها رسید، گزینه use existing file رو انتخاب میکنیم.
  • از پنجره فایل اکسل مورد نظر رو انتخاب کرده و Ok میزنیم.
  • در پنجره باز شده، تیک گزینه Show all رو میزنیم و از موراد نمایش داده شده، MS Excel Worksheets via DDE (*.xls) رو انتخاب کرده و ok میزنیم.
  • سپس از پنجره نمایش داده شده، Entire spreadsheet رو انتخاب میکنیم.
  • حالا طبق روال قبل ادامه میدیم. یعنی در متن سند، فیلدهایی که باید قرار بگیرن رو مشخص میکنیم.
  • در نهایت وقتی اسناد رو ایجاد میکنیم، فیلدهایی که فرمت دهی شده باشن، با همون فرمت اکسل نمایش داده میشوند. (شکل ۱۱)
  • final result
    شکل ۱۱- انتقال داده ها با فرمت مشخص از اکسل

    روش دوم: تغییر فرمت بخشی از فیلدها در فایل Word

    ارتباط به یک فایل اکسل از طریق DDE سریع ترین راه برای حل این مشکل بشمار میره. اما اگر به هر دلیلی نتونستید از این روش استفاده کنید میتونید از یک سری کدنویسی (مشابه با کدنویسی فرمت سل) در قسمت Merge Field استفاده کنید. کدهای فرمت دهی Numeric switch نوعی کد هستند که میتونن بخشی از داده های یک سند ورد رو بصورت دلخواه تغییر بدن. برای این که بتونیم از این کدها استفاده کنیم طبق زیر عمل میکنیم:

    • فیلد مورد نظر در میل مرج که باید فرمتش تغییر کنه (مثلا ستون Gift که میزان مبلغ رو نمایش میده) انتخاب میکنیم.
    • کلید ترکیبی Shift+F9 یا Alt+F9 رو میزنیم تا کد مربوطه نمایش داده بشه. با این کار یک کد عمومی متناسب با فیلد انتخابی به صورت {MERGEFIELD name} نمایش داده میشه که Name نام فیلد انتخابی است. در اینجا کد بصورت {MERGEFIELD “Gift”} نمایش داده میشه.
    • حالا کد مورد نظر رو تایپ میکنیم (در ادامه با مثال مشاهده میکنیم)
    • بعد از وار کردن کد، F9 میزنیم که آپدیت بشه.
    • در نهایت هم کلید ترکیبی Shift+F9 یا Alt+F9 رو میزنیم که کد پنهان بشه و ادامه مراحل Mail Merge رو انجام میدیم.

    فرمت نامبر در Mail Merge

    مثلا میخواهیم فیلد مبلغ جایزه رو بصورت جداکننده سه رقم سه رقم جدا کنیم. برای این کار، بعد از اینکه فیلد gift رو جلوی مبلغ قرار دادیم، عبارت «gift» رو انتخاب میکنیم و Shift F9 میزنیم، این عبارت به { MERGEFIELD “GIFT”} تبدیل میشه و حالا جلوی “GIFT” کد متناسب با جداکننده سه رقم رو اضافه میکنیم. یعنی:

    {MERGEFIELD “GIFT” \#,0}

    حالا F9 رو میزنیم و دوباره به “GIFT” تبدیل میشه و سپس بقیه مراحل Mail Merge رو ادامه میدیم.  

    نکته: برای نمایش درصد، توجه داشته باشید که اگر اعداد داخل اکسل، بصورت واقعی درصد شده باشند، مقدارشون تقسیم بر صد هست. یعنی اگر ۳۰% دیده میشه، مقدار اصلی ۰.۳ هست پس اول یک ستون ایجا کنید و در ۱۰۰ ضرب کنید و سپس ستون جدید رو بیارید داخل میل مرج. یا اینکه محاسبات انجام بدید مثل زیر (Percent اسم ستونی هست که درصد نمایش میده):

    {% 0 #\ 100*{MERGEFIELD Percent }=  }

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

    فرمت نامبر در Mail Merge

    نکته: در فرمت های مربوط به این قسمت M برای ماه و m برای دقیقه استفاده میشه.

      نمایش صفر پشت عدد در Mail Merge برای انتقال داده هایی مثل شماره موبایل، کدملی و … که در ابتدا، صفر دارن، باید فرمت سلول ها رو تکست کنیم و صفر ها رو دستی وارد کرده باشیم. چون اگر از طریق custom format در اکسل و مثلا ۰۰۰۰۰ صفرها نمای شداده شده باشن، به ورد منتقل نمیشن. پس ابتدا فرمت سلول ها رو تکست میکنیم و صفرهای ابتدا رو دستی وارد میکنیم. در این مقاله با یک مثال کامل، نحوه استفاده از Mail Merge رو توضیح دادیم و یکی از مهمترین مشکلات که در مورد تغییر فرمت داده ها در مقصد بود رو با دو روش حل کردیم. با این توضیحات دیگه مشکلی برای استفاده از Mail Merge  برای صدور اسنادی مثل قرارداد، فیش حقوقی و … وجود نداره. اما اگر باز هم مایل به استفاده از کد VBA برای این کار هستید، مقاله مربوط به صدور و پرینت فیش حقوقی رو مطالعه کنید و از کد آماده در اون مقاله استفاده کنید.

    مشاهده ویدئو این آموزش

    آواتار
    145

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

    دیدگاه کاربران
    • جواد ۱ خرداد ۱۴۰۴ / ۷:۳۲ ب٫ظ

      سلام خانم مهندس
      من یک شیت اکسل حقوق دارم برای فروردین ویک فیش وردی هم با آموزش شمادرست کردم برای فروردین حالا برای اردیبهشت هم یک فایل اکسل دارم ودیگر نمی توانم با میل مرج فیش درست کنم لطفا راهنمایی برمایید ممنون می شوم
      واین کار را باید هرماه درست کنم هر کاری می کنم خطا می دهد
      ممنون می شوم مشکلمن را حل کنید

      • آواتار
        حسنا خاکزاد ۱۶ تیر ۱۴۰۴ / ۶:۰۱ ب٫ظ

        سلام
        چرا نمیتونید؟!
        کپی کنید فایل ورد رو دوباره ارتباطش رو با داد ههای اردیبهشت بسازید

    • محمد ۲۲ اسفند ۱۴۰۳ / ۲:۵۶ ب٫ظ

      سلام وبا تشکر از مطالب کاربری و آموزنده تان
      چکار کنیم که بعد از آماده کردن نامه با این روش با گیرنده های متعدد و ارسال آن به رئیس ایشون بتواند با یکبار امضا همه نامه ها امضا بخورند و یا تغییری که ایشون میدهند به همه نامه ها اعمال شود؟

      • آواتار
        حسنا خاکزاد ۲۲ اسفند ۱۴۰۳ / ۳:۲۲ ب٫ظ

        درود
        هر تغییری بدید دوباره باید این پروسه رو طی کنید
        امضا هم اگه عک باه، از اول روی اصل نامه قرار بدید به عنوان بخش ثابت نامه

    • چاوشی ۴ اسفند ۱۴۰۳ / ۱۲:۱۶ ب٫ظ

      با سلام ،
      از آموزش ارایه شده شما تشکر میکنم.

    • آواتار
      مهدی ۱۰ دی ۱۴۰۳ / ۹:۱۰ ق٫ظ

      سلام
      چرا زمان انتقال نظم نوشتار بهم میخوره مثلاً تایپ کردیم A439863 داخل ورد ۴۳۹۸۶۳A نمایش میده یعنی بای اینکه از چپ به راست جای‌گذاری کنه از راست به چپ می‌چینه

      • آواتار
        حسنا خاکزاد ۱۰ دی ۱۴۰۳ / ۹:۲۰ ق٫ظ

        سلام
        right to left کردین مقصد رو؟

    ارسال دیدگاه

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

    توسط
    تومان