استفاده از Macro در کار با نرم‌افزارهایی مثل Excel‌ و Google Sheets، کارهای تکراری و وقت‌گیر را ساده و سریع می‌کند. در گوگل شیتس قابلیت ضبط کردن ماکرو و ایمپورت کردن آن در سایر فایل‌ها و همین‌طور اجرا کردن یک ماکرو با شورت‌کات کیبورد، وجود دارد.

در این مقاله به معرفی کاربرد ماکروها در گوگل شیتس و همین‌طور استفاده از Google App Script برای ماکرونویسی و مدیریت ماکروها می‌پردازیم.

آشنایی با ماکروها و کاربرد Macro در Google Sheets

ماکرو که مخفف Macroinstruction است، به مجموعه‌ای از دستورات گفته می‌شود که پشت‌سرهم اجرا می‌شوند تا کاری پیچیده، به صورت خودکار و ساده انجام شود. در برخی نرم‌افزارها این قابلیت در نظر گرفته شده که کاربر بتواند کارهایی که با موس و کیبورد انجام می‌دهد را به شکل ماکرو ذخیره کند و هر زمان که لازم شد، با کلیک روی یک دکمه یا اجرای یک اسکریپت، همه‌ی اعمال و دستورات را سریعاً اجرا کند.

قابلیت ضبط کردن ماکرو، برای آموزش انجام کاری به نرم‌افزارها مناسب است. 

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

روی بعضی مدل‌های موس گیمینگ یا کیبورد، دکمه‌ای برای اجرا کردن ماکرو وجود دارد که در بازی‌ها و نرم‌افزارها می‌توان از آن به شکل بهینه‌ای استفاده کرد.

زمانی که در فایلی که در گوگل شیتس باز کرده‌اید، برای اولین مرتبه از گزینه‌ی ضبط کردن ماکرو استفاده می‌کنید، یک اسکریپت در سرویس Google App Script ایجاد می‌شود و تمام کارهایی که انجام داده‌اید به شکل کدهایی در این اسکریپت ثبت می‌شود. بنابراین برای ماکرونویسی نیازی به تبحر در برنامه‌نویسی نیست. ممکن است در آینده هم نیازی به ویرایش کردن اسکریپت موردبحث نباشد. در واقع می‌توانید ماکروهای اضافی و بلااستفاده را حذف کنید و از نو ماکرو ضبط کنید.

در گوگل شیتس با استفاده از ماکروها، می‌توانید کارهایی مثل موارد زیر را ساده کنید:

  • اعمال سریع استایل و فرمت موردنظر روش بخش‌های دلخواه
  • ایجاد شیت‌های جدید و پر کردن سلول‌ها
  • استفاده‌ی سریع از گزینه‌های مختلف در منوهای گوگل شیتس
  • و بسیاری موارد دیگر!

چگونه در Google Sheets ماکرو ضبط کنیم؟

به وب‌سایت گوگل شیتس مراجعه کنید و فایل جدید یا یکی از فایل‌ها را باز کنید. سپس از منوی Tools گزینه‌ی Macros و Record macro‌ را انتخاب کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

منویی در پایین پنجره ظاهر می‌شود که دو گزینه در آن وجود دارد:

  • Absolute References یا ریفرنس‌های مطلق: با انتخاب این گزینه، ماکرویی که ضبط می‌کنید کارها را تنها روی سلول‌هایی انجام می‌دهد که حین ضبط کردن ماکرو با آنها تعامل داشته‌اید.

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

  • Relative References یا ریفرنس‌های نسبی: اگر این گزینه را انتخاب کنید، ماکرو با توجه به سلول‌هایی که رویشان کلیک کرده‌اید و انتخاب شده، کار را شروع می‌کند.

به عنوان مثال اگر سلول B1 را انتخاب کرده باشید و ضبط کردن را آغاز کنید و روی C1 کلیک کنید، در زمان اجرا هم سلولی از ستون بعدی و همان ردیف انتخاب می‌شود. اگر A5 را انتخاب کرده باشید و اجرای ماکرو را شروع کنید، اولین کاری که انجام می‌شود، انتخاب شدن سلول B5‌ است.

با توجه به توضیحات فوق روشن است که بیشتر اوقات به ریفرنس‌های نسبی نیازی داریم اما به هر حال اهداف متنوع و متفاوت است. لذا کمی فکر کنید و حالت مناسب را صحیح انتخاب کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

اکنون می‌توانید کارهایی که موردنظرتان است را روی سلول‌ها انجام بدهید. کلیک کردن، تغییر فرمت و ظاهر، کار با گزینه‌های منوها و غیره، همگی ضبط می‌شود. در نهایت روی Save کلیک کنید تا آنچه ثبت و ضبط شده، ذخیره شود.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

نامی مناسب برای ماکرو تایپ در فیلد Name تایپ کنید. انتخاب شورت‌کات کیبورد الزامی نیست اما به هر حال اگر بخواهید سرعت کار بیشتر شود، بهتر است ماکرو را با شورت‌کات اجرا کنید. شورت‌کات به صورت ترکیب دکمه‌های Ctrl + Alt + Shift و یک عدد از ۰ تا ۹ است. بنابراین تعداد ماکروهایی که می‌توان با شورت‌کات اجرا کرد، محدود به ۱۰ مورد است. در نهایت روی Save کلیک کنید. 

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

برای ویرایش کردن ماکروهایی که ضبط شده، تغییر شورت‌کات یا نام ماکروها، می‌توان از منوی Tools و گزینه‌ی Macros و Manage macros استفاده کرد.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

در پنجره‌ی باز شده تغییرات را انجام بدهید و روی Update کلیک کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

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

برای اجرا کردن ماکروها می‌توانید از شورت‌کات مربوط به هر ماکرو استفاده کنید و اگر شورت‌کاتی در نظر نگرفته باشید هم می‌بایست از منوی Tools و گزینه‌ی Macro استفاده کنید.

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

در مورد ماکروهایی که با ریفرنس‌های مطلب یا Absolute references ضبط شده باشند، تفاوتی ندارد که کدام سلول در حال حاضر انتخاب شده است. می‌توانید از منوی Tools و گزینه‌ی Macros، لیست مایکروها را مشاهده کنید و روی یکی از موارد کلیک کنید تا سریعاً اجرا شود.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

در مورد ماکروهای نسبی نیز روال کار به همین صورت است و صرفاً باید قبل از اجرا، سلول شروع را انتخاب کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

نحوه ایمپورت کردن ماکروها در گوگل شیتس

ماکروهایی که ضبط می‌کنید صرفاً در فایلی که ضبط انجام شده، قابل استفاده هستند و کلیت ندارند. اما اگر بخواهید در فایل دیگری از ماکروها استفاده کنید، یه راهکار ساده وجود دارد و آن ایمپورت کردن ماکروها است.

برای شروع کار می‌بایست برنامه‌ی مربوط به ماکروها را کپی کنید. در واقع دستورات در Google Apps Script ذخیره شده و به سادگی قابل مشاهده و ویرایش است. برای کپی کردن دستورات از فایل منبع، فایل را باز کنید و از منوی Tools گزینه‌ی Macros و سپس Manage macros را انتخاب نمایید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

حال روی منوی سه‌نقطه در کنار ماکرویی که می‌خواهید کپی کنید کلیک کنید و گزینه‌ی Edit Script را انتخاب کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

همه‌ی ماکروها در یک فایل ذخیره می‌شود. متن و در واقع اسکریپت ماکرو را با کلید میانبر Ctrl + A به صورت کامل انتخاب کرده و سپس با Ctrl + C در کلیپ‌بورد کپی کنید. دقت کنید که سمی‌کالن یا ; انتهای function یا تابع، از قلم نیافتد!

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

حال سراغ فایل مقصد بروید. از منوی Tools و گزینه‌ی Macros‌ و Record macro برای شروع ضبط ماکروها استفاده کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

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

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

نیازی به نوشتن نام ماکرو نیست و سریعاً عبارتی تایپ کنید و روی Save کلیک کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

حال از منوی Tools و گزینه‌ی Script Editor برای شروع ویرایش اسکریپت استفاده کنید. در ستون کناری روی macros.gs کلیک کنید. در سمت راست تمام محتوا را انتخاب کرده و Del را فشار دهید تا حذف شود. سپس با زدن Ctrl + V ، محتوای کلیپ‌بورد را پیست کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

در نهایت Ctrl + S را فشار دهید تا اسکریپتی که تغییر کرده، ذخیره شود. تب باز شده را ببندید و به فایل گوگل شیتس برگردید. با توجه به اینکه تابع جدیدی در اسکریپت اضافه شده، اکنون می‌توانید در منوی Tools روی Macros و سپس Import کلیک کنید و ایمپورت کردن تابع جدید که شناسایی شده را آغاز کنید.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

در ادامه روی دکمه‌ی Add Function کلیک کنید تا تابع مربوط به ماکروی شما وارد شود.

آموزش ضبط ماکرو و اجرای Macro و ایمپورت در Google Sheets

با این روش ساده، ماکرو قابل انتقال به سایر فایل‌ها است اما شورت‌کات کیبورد تنظیم نمی‌شود. لذا می‌بایست شورت‌کات مناسب را برای اجرا کردن ماکرو را به صورت دستی تنظیم کنید که البته به روش کار اشاره کردیم.