هنگامی که یک ماکرو را در اکسل اجرا می کنید، برنامه تمام توجه خود را به تکمیل ماکرو معطوف می کند. (تقریباً انسانی به نظر می رسد، اینطور نیست؟) این بدان معنی است که اگر ماکرو کمی پردازش سنگین داده های شما را انجام دهد، به نظر می رسد که سیستم شما در طول پردازش ماکرو "قفل" شده است.
مطمئن باشید که پردازش ماکرو فقط بر اکسل تأثیر می گذارد. میتوانید برنامه دیگری را باز کنید و در حالی که ماکرو در پسزمینه اکسل از بین میرود، در آن کار کنید. البته توجهی که سیستم شما به ماکرو می کند احتمالاً پاسخ برنامه دیگر را کند می کند، اما این بستگی به نسخه ویندوزی دارد که روی سیستم خود استفاده می کنید. دلیل؟ به اشتراک گذاری منابع نیاز به فرآیندی دارد که به عنوان چند وظیفه ای شناخته می شود. نسخههای مختلف ویندوز به روشهای مختلفی از چندوظیفگی استفاده میکنند.
ممکن است تعجب کنید که چگونه می توانید کارهای دیگری را در اکسل انجام دهید در حالی که برنامه مشغول اجرای یک ماکرو است. آسان - فقط یک نمونه دیگر از اکسل را باز کنید (آن را دوباره از منوی استارت خود اجرا کنید) و کارهای دیگری را انجام دهید. تنها کاری که باید انجام دهید این است که مطمئن شوید که سعی نکنید روی همان کتاب کار (یا کتابهای کاری) که توسط ماکروها در اولین نمونه اکسل شما استفاده میشود، کار نکنید.
راه دیگر برای انجام کمی کار این است که ماکرو خود را فقط کمی تغییر دهید. این احتمال وجود دارد که اگر ماکرو شما برای مدت طولانی در حال اجرا است، به دلیل اجرای یک حلقه از نوعی باشد. با افزودن دستور DoEvents در حلقه، ماکرو اجرا را به طور موقت به حالت تعلیق در می آورد و کنترل را به فرآیندهای کاربران باز می گرداند. بنابراین اگر کلیدی را فشار داده باشید، روی ماوس کلیک کرده باشید یا شروع به تایپ چیزی کرده باشید، DoEvents متوجه می شود و هر کاری را که برای انجام کارهایی که می خواهید انجام دهید، انجام می دهد. وقتی تمام ورودی های کاربر سرویس شد، ماکرو با خوشحالی به راه خود ادامه می دهد.
افزودن DoEvents تا حدودی سرعت ماکرو شما را کند می کند، اما به شما اجازه می دهد تا کمی به کار خود ادامه دهید. (بدانید که اکسل همچنان کند خواهد بود؛ ماکرو شما برای اجرا به منابع نیاز دارد.) افزودن DoEvents همچنین می تواند فرصتی برای خارج شدن از ماکرو (با استفاده از Ctrl+Break ) به شیوه ای کنترل شده فراهم کند.
با این حال، به یاد داشته باشید که تنها با آزمایش (و آزمایش بیشتر) می توانید بفهمید که چه چیزی در موقعیت شما بهترین کار را می کند.