• ماکروهای جالب برای اکسل. ماکروها در اکسل - دستورالعمل استفاده. ماکروهای مفید چگونه آخرین سطر یا ستون یک محدوده را پیدا کنیم

    صفحات گسترده اکسل یکی از محبوب ترین روش ها برای ذخیره و سازماندهی اطلاعات است. اگر ماکروها را در اکسل پیاده سازی کنید، قابلیت های برنامه تقریبا دو برابر می شود. به عنوان مثال، ماکروها به خودکارسازی فرآیندهای روتین و سرعت بخشیدن به کار یکنواخت کمک می کنند. آنها اغلب توسط متخصصانی استفاده می شوند که گزارش ها را از 1C به Excel ترجمه می کنند. با کمک کدهای تعبیه شده، به راحتی می توان آنها را به یک قالب استاندارد واحد رساند.

    ماکروهای اکسل چیست؟

    ماکروها نه تنها در جداول، بلکه در همه چیز استفاده می شوند مایکروسافت آفیس. آنها با ویژوال ایجاد می شوند پایه برایکد برنامه اگر تا حدی با برنامه نویسی وب آشنایی دارید، می توانید با جاوا اسکریپت یک قیاس ترسیم کنید. ماکروهای اکسل تقریباً همان کاری را انجام می دهند که جاوا اسکریپت با داده های HTML انجام می دهد.

    بخش کوچکی از کارهایی که یک ماکرو می تواند در برنامه های آفیس انجام دهد:

    سند را بر اساس سبک تراز کنید و آن را قالب بندی کنید.
    . انجام عملیات با داده های عددی و متنی؛
    . جستجوی کمک فایل های خارجی(متن، پایگاه داده و سایر موارد)؛
    . ایجاد اسناد جدید از ابتدا؛
    . چندین عمل را ترکیب کرده و آنها را به طور خودکار انجام دهید.

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

    خطرات ماکروها در اکسل چیست؟

    فایل های خراب در رایانه شخصی؛
    . سرقت اطلاعات محرمانه

    معرفی ویروس در حین کار یکی از آنها اتفاق می افتد برنامه های اداری- Word یا Excel. پس از توقف کار، آنها شروع به کار خواهند کرد کار آفلاینویروس و عفونت کل سیستم

    روش دیگری که یک ماکرو مخرب کار می کند، واسطه گری برای تزریق تهدید به سیستم است. در این صورت به نوعی دروازه ای برای معرفی و تولید نرم افزار تروجان می باشد. دیگر توسط یک ماکرو اصلاح شده کنترل نمی شود، بلکه توسط خودش کنترل می شود سیستم عاملو در نتیجه، تهدید گسترده تر می شود. همیشه نمی توان چنین ویروس هایی را درمان کرد، گاهی اوقات باید به طور کامل ویندوز OC یا تغییر دهید HDD PC (بسته به وظایفی که هکر هنگام نوشتن کد تعیین می کند).

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

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

    نحوه ضبط ماکروها در اکسل

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

    ایجاد با منوی "View" آغاز می شود. در آن باید موقعیت "Macros" و دستور "Record Macro" را انتخاب کنید. در مرحله بعد، باید نامی را بدون فاصله مشخص کنید، به عنوان مثال، "Format" (اگر کد مسئول تغییر قالب متن یا سلول ها باشد).

    پس از آن، تمام اقدامات شما به طور خودکار ضبط و به کد ماکرو تبدیل می شود. یک دکمه با یک مربع کوچک ("توقف") در پایین سند ظاهر می شود که با کلیک کردن روی آن می توانید ضبط را متوقف کنید. بنابراین می‌توانید به‌طور خودکار ماکروها را در اکسل ضبط کنید، نمونه‌هایی از آن‌ها را می‌توانید بعداً در فرآیند یادگیری تجزیه و تحلیل کنید.

    نحوه فعال کردن ماکروها در اکسل

    برای گنجاندن یک ماکرو ضبط شده در اسناد دیگر، باید پس از پاک کردن جدول، آن را ذخیره کنید. قالب سند باید روی XLTM (که از ماکروها پشتیبانی می کند) تنظیم شود.

    دفعه بعد که به سند دسترسی پیدا کردید، برای فعال کردن ماکروها در اکسل، ابتدا باید استفاده از آنها را در پاپ آپ فعال کنید. خط بالایی. سپس باید داده هایی را که توسط ماکرو ویرایش می شود از یک جدول CSV معمولی وارد کنید. در پایان وارد کردن، باید دوباره به منوی "View" بروید، "Macros" را در آنجا انتخاب کنید و نام کدی که ساخته اید را در لیست پیدا کنید. در پایان، روی دکمه "Run" کلیک کنید. پس از آن، مشاهده خواهید کرد که چگونه برنامه طبق الگوریتمی که قبلاً مشخص کرده اید، محاسبات را انجام می دهد و سند را قالب بندی می کند.

    چگونه کد برنامه ماکرو را ببینیم؟

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

    برای انجام این کار، باید دستورات زیر را به صورت متوالی اجرا کنید:

    برگه "View" را گسترش دهید؛
    . باز کردن "Macros"؛
    . نام ماکرو مورد نیاز را انتخاب کنید.
    . با استفاده از دکمه "تغییر" یک پنجره را با کد آن فراخوانی کنید.

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

    نحوه شروع یک ماکرو با کلیک سلول

    فرض کنید می خواهید زمانی که سلول A1 انتخاب شده است، ماکرو اجرا شود. برای اینکه سلول انتخاب شده در اکسل ماکرو را اجرا کند، باید کد برنامه را به ماژول اول اضافه کنید:

    کاربرگ فرعی خصوصی_SelectionChange(ByVal Target As Range)
    اگر Target.Address = "$A$1" سپس: با module1 تماس بگیرید
    پایان فرعی

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

    از کجا می توانم کار با ماکروها را یاد بگیرم

    راه های مختلفی برای یادگیری نحوه ایجاد ماکروهای پیچیده تر وجود دارد. آنها باید از نظر منطق و دنباله ای مشخص از اقدامات متفاوت باشند. چنین ماکروهایی فقط با نوشتن کد VBA به صورت دستی ایجاد می شوند. برای ایجاد ماکروهای پیچیده، باید مدتی را صرف یادگیری پیچیدگی های زبان برنامه نویسی ویژوال بیسیک کنید.

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

    مثال ها

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

    Sub Macro1()

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

    یک ماکرو را می توان به دو روش ضبط کرد:

    • بطور خودکار؛
    • به صورت دستی

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

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

    ضبط خودکار ماکرو

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

    پنجره تنظیمات ضبط ماکرو باز می شود. در اینجا می توانید هر نام ماکرو را مشخص کنید، اگر نام پیش فرض برای شما مناسب نیست. نکته اصلی این است که نام باید با یک حرف شروع شود نه یک عدد. همچنین در عنوان نباید فاصله وجود داشته باشد. ما نام پیش فرض را گذاشتیم - "Macro1".

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

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

    در پایین‌ترین قسمت تنظیمات ماکرو، می‌توانید هر توضیحی را که مناسب زمینه است، از این ماکرو بگذارید. اما، انجام این کار ضروری نیست.

    پس از انجام تمام تنظیمات، روی دکمه "OK" کلیک کنید.

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

    به عنوان مثال، بیایید ساده ترین عملیات حسابی را بنویسیم: اضافه کردن محتویات سه سلول (=C4+C5+C6).

    پس از آن، بر روی دکمه "توقف ضبط" کلیک کنید. هنگامی که ضبط فعال است، این دکمه از دکمه "Record Macro" تبدیل شده است.

    اجرای ماکرو

    برای بررسی نحوه عملکرد ماکرو ضبط شده، روی دکمه "Macros" در همان بلوک ابزار "Code" کلیک کنید یا ترکیب را فشار دهید. کلیدهای Alt+F8.

    پس از آن، پنجره ای با لیستی از ماکروهای ضبط شده باز می شود. ما به دنبال ماکرویی هستیم که ضبط کرده ایم، آن را انتخاب کرده و روی دکمه "Run" کلیک کنید.

    شما می توانید حتی ساده تر انجام دهید و حتی با پنجره انتخاب ماکرو تماس نگیرید. به یاد داریم که ترکیبی از "کلیدهای داغ" را برای فراخوانی سریع یک ماکرو ضبط کردیم. در مورد ما، این Ctrl + M است. این ترکیب را روی صفحه کلید تایپ می کنیم و پس از آن ماکرو شروع می شود.

    همانطور که می بینید، ماکرو دقیقاً تمام اقداماتی را که قبلاً ضبط شده بود انجام داد.

    ویرایش ماکرو

    برای ویرایش ماکرو، دوباره بر روی دکمه "Macros" کلیک کنید. در پنجره باز شده، ماکرو مورد نظر را انتخاب کرده و بر روی دکمه «ویرایش» کلیک کنید.

    Microsoft Visual Basic (VBE) باز می شود، محیطی که ماکروها در آن ویرایش می شوند.

    هر ورودی ماکرو با دستور Sub شروع می شود و با دستور End Sub به پایان می رسد. بلافاصله بعد از دستور Sub نام ماکرو آمده است. عبارت "Range("...").Select انتخاب سلول را مشخص می کند. به عنوان مثال، دستور "Range("C4).Select" سلول C4 را انتخاب می کند. عملگر "ActiveCell.FormulaR1C1" برای ثبت اقدامات در فرمول ها و سایر محاسبات استفاده می شود.

    بیایید سعی کنیم ماکرو را کمی تغییر دهیم. برای انجام این کار، عبارت را به ماکرو اضافه کنید:

    محدوده ("C3"). انتخاب کنید
    ActiveCell.FormulaR1C1 = "11"

    عبارت "ActiveCell.FormulaR1C1 = "=R[-3]C+R[-2]C+R[-1]C" با "ActiveCell.FormulaR1C1 = "= R[-4]C+R جایگزین خواهد شد. [-3]C+R[-2]C+R[-1]C"».

    ویرایشگر را ببندید و ماکرو را مانند دفعه قبل اجرا کنید. همانطور که می بینید با توجه به تغییراتی که معرفی کردیم سلول دیگری با داده اضافه شد. در محاسبه کل نیز لحاظ شد.

    اگر ماکرو بیش از حد بزرگ باشد، ممکن است زمان زیادی طول بکشد تا اجرا شود. اما با معرفی تغییر دستیدر کد، ما می توانیم روند را تسریع کنیم. دستور "Application.ScreenUpdating = False" را اضافه کنید. حفظ خواهد کرد قدرت پردازشو در نتیجه سرعت کار را افزایش می دهد. این با به روز نشدن صفحه در طی مراحل محاسباتی به دست می آید. برای از سرگیری به روز رسانی پس از اجرای ماکرو، در پایان دستور "Application.ScreenUpdating = True" را می نویسیم.

    همچنین دستور "Application.Calculation = xlCalculationManual" را در ابتدای کد اضافه می کنیم و "Application.Calculation = xlCalculationAutomatic" را در انتهای کد اضافه می کنیم. با این کار در ابتدای ماکرو محاسبه مجدد خودکار نتیجه را پس از هر تغییر در سلول ها خاموش می کنیم و در انتهای ماکرو آن را روشن می کنیم. بنابراین، اکسل نتیجه را فقط یک بار محاسبه می کند و دائماً آن را دوباره محاسبه نمی کند که باعث صرفه جویی در زمان می شود.

    نوشتن کد ماکرو از ابتدا

    کاربران پیشرفته نه تنها می توانند ماکروهای ضبط شده را ویرایش و بهینه کنند، بلکه می توانند کد ماکرو را از ابتدا بنویسند. برای شروع، باید روی دکمه "Visual Basic" که در ابتدای نوار توسعه دهنده قرار دارد، کلیک کنید.

    پس از آن، پنجره ویرایشگر آشنای VBE باز می شود.

    برنامه نویس کد ماکرو را در آنجا به صورت دستی می نویسد.

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

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

    نحوه فعال کردن ماکروها در اکسل

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

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

    نوشتن ماکرو در اکسل

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

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

    اکنون می توانید با کلیک بر روی دکمه لیست تمام ماکروهای ایجاد شده را مشاهده کنید ماکرو،در یک گروه بودن کد.در کادر محاوره‌ای که ظاهر می‌شود، می‌توانید نام‌های توصیفی بیشتری به کدهای خود بدهید یا میانبرهای صفحه کلیدی را تنظیم کنید که یک ماکرو خاص را اجرا کند. گزینه جایگزینراه اندازی این پنجره با فشار دادن Alt + F8 است.

    ویرایش ماکروها

    تبریک می گویم! شما اولین ماکرو خود را نوشته اید. منطقی است که اکنون بررسی کنیم که اکسل چه نوع کدی را برای ما تولید کرده است. کد تولید شده به داخل نوشته شده است زبان VBA(ویژوال بیسیک برای برنامه های کاربردی). برای دیدنش باید بازش کنی ویرایشگرVB(VBE)که با فشار دادن Alt + F11 یا دکمه راه اندازی می شود دیداریپایه ایبرگه توسعه دهنده.

    برای جلوگیری از سردرگمی در ویرایشگر، می توانید تنها با یک برگه از یک کتاب کار، برگه یا ماژول کار کنید. این همان چیزی است که ویرایشگر در زندگی واقعی به نظر می رسد.

    پیشنهاد میکنم برای این مرحلهدر مورد پنجره ها و منوهای مختلف ویرایشگر VBA بیشتر بیاموزید. این کار بعداً در وقت شما صرفه جویی می کند.

    برای مشاهده کد روی شاخه کلیک کنید ماژول هادر پنجره پروژه ها و روی شاخه ای که ظاهر می شود دوبار کلیک کنید مدول1 . ویرایشگر پنجره ای را با کد باز می کند، همانطور که در تصویر نشان داده شده است.

    در اینجا می توانید کد تولید شده را که هنگام کار در اکسل نوشته شده است ویرایش کنید. به عنوان مثال، فرض کنید می خواهید یک ستون خاص را با مقادیر 1 تا 10 پر کنید. از قبل سه مرحله اول را دارید که مقادیر 1، 2 و 3 را در سه خانه اول ستون A وارد کنید. ما باید هفت مرحله باقیمانده را اضافه کنیم.

    اگر به کد بالا نگاه کنید، خواهید دید که ساختار ماکرو به شکل خاصی است. برنامه ابتدا مکان نما را با استفاده از دستور Range("A1").Select به سلول منتقل می کند، سپس با استفاده از ActiveCell.FormulaR1C1 = "1" محتویات آن را ویرایش می کند. بنابراین، برای مراحل باقیمانده، می‌توانیم این مراحل را تکرار کنیم و آدرس سلول و مقداری که می‌خواهید در این سلول بنویسید را تغییر دهیم. به عنوان مثال، برای تنظیم سلول A4 روی 4، باید بنویسید:

    محدوده ("A4"). انتخاب کنید
    ActiveCell.FormulaR1C1 = "4"

    و همین مراحل را برای مقادیر باقیمانده تکرار کنید.

    پس از اتمام ویرایش، کتاب کار را ذخیره کنید. شما می توانید ماکرو را با فشار دادن دکمه F5 یا با بازگشت به حالت کار اجرا کنید کتاب کار اکسل، به برگه بروید توسعه دهندهبه گروه کد -> ماکروهاو ماکرو مورد نظر خود را از لیست انتخاب کنید.

    چند دقیقه وقت بگذارید و کدهای تولید شده توسط اکسل را به دقت بررسی کنید. اگر مبتدی هستید، صرف چند دقیقه برای یادگیری کد کمک زیادی به معرفی اشیاء VBA در آینده می کند. لطفا توجه داشته باشید که مثالی که در نظر گرفتیم فقط یک مثال است. سریعتر و وجود دارد راه های موثردستیابی به نتایج مشابهی که در ادامه به آن خواهیم پرداخت.

    افزایش سرعت اجرای ماکروهای اکسل

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

    با استفاده از دستور Application.ScreenUpdating

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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    Sub Macro1()

    محدوده ("A1"). انتخاب کنید

    محدوده ("A2"). انتخاب کنید

    محدوده ("A3"). انتخاب کنید


    پایان فرعی

    دستور Application.ScreenUpdating به اکسل می گوید که نمایش داده های محاسبه شده مجدد روی صفحه را متوقف کند و مقادیر نهایی را در پایان اجرای کد بازگرداند.

    با استفاده از دستور Application محاسبه

    ترفند دوم غیرفعال کردن محاسبات خودکار است. بگذار توضیح بدهم. هر بار که کاربر یا فرآیند یک سلول را به روز می کند، اکسل سعی می کند تمام سلول هایی را که به آن وابسته هستند دوباره محاسبه کند. بنابراین بیایید بگوییم اگر سلولی که ماکرو می‌خواهد به‌روزرسانی کند بر 10000 سلول دیگر تأثیر بگذارد، اکسل سعی می‌کند همه آنها را قبل از تکمیل کد دوباره محاسبه کند. بر این اساس، اگر تعدادی سلول تأثیرگذار وجود داشته باشد، محاسبه مجدد می تواند به طور قابل توجهی اجرای کد را کاهش دهد. برای جلوگیری از این اتفاق، می توانید Application را تنظیم کنید. محاسبه در ابتدای کد، که محاسبه مجدد فرمول را به تغییر می دهد حالت دستیو سپس محاسبه خودکار را در انتهای ماکرو برگردانید.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

    Sub Macro1()
    Application.ScreenUpdating = نادرست

    محدوده ("A1"). انتخاب کنید
    ActiveCell.FormulaR1C1 = "1"
    محدوده ("A2"). انتخاب کنید
    ActiveCell.FormulaR1C1 = "2"
    محدوده ("A3"). انتخاب کنید
    ActiveCell.FormulaR1C1 = "3"

    Application.ScreenUpdating = درست است
    پایان فرعی

    مراقب باشید، فراموش نکنید که این گزینه را دوباره به آن تغییر دهید حالت خودکاردر پایان ماکرو در غیر این صورت، باید این کار را در خود اکسل با کلیک بر روی تب انجام دهید فرمول هابه گروه محاسبهو انتخاب کنید گزینه های محاسبه -> خودکار.

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

    در حالت ضبط خودکاردر ماکروها، ممکن است متوجه شوید که اکسل اغلب از یک دستور انتخاب سلول استفاده می کند، مانند Range("A1").Select. در مثال ما استفاده کردیم دستور داده شدهچندین بار برای انتخاب یک سلول و تغییر مقدار آن. شما می توانید به سادگی با مشخص کردن آدرس سلول و تنظیم آن به مقدار مورد نیاز از این امر جلوگیری کنید (ماکرو حرکت مکان نما را از یک سلول به سلول دیگر ضبط می کند، بنابراین این مراحل را وارد می کند. با این حال، آنها ضروری نیستند). بنابراین، کد کارآمدتر به این شکل خواهد بود.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    Sub Macro1()
    Application.ScreenUpdating = نادرست
    Application.Calculation = xlCalculationManual
    محدوده ("A1"). مقدار = 1
    محدوده ("A2"). مقدار = 2
    محدوده ("A3"). مقدار = 3
    محدوده ("A4"). مقدار = 4
    محدوده ("A5"). مقدار = 5
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = درست است
    پایان فرعی

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

    نمونه های ماکرو اکسل

    در زیر چند نمونه کد VBA وجود دارد که به شما کمک می کند تکراری ترین کارها را خودکار کنید.

    این راهنما حاوی ماکروهایی در مورد موضوعات زیر است:
    ماکرو را با جستجوی سلولی اجرا کنید.
    هنگامی که یک کتاب کار باز می شود، یک ماکرو را اجرا کنید.
    هنگامی که در سلول "2" تایپ می کنید، یک ماکرو اجرا کنید.
    با فشار دادن "Enter" یک ماکرو اجرا کنید.
    تب Add-Ins خود را (Cell Format) به پنل اضافه کنید.
    کار با فایل ها (به عنوان مثال تبادل داده با TXT، RTF، XLS، و غیره).
    بررسی وجود یک فایل در مسیر مشخص شده.
    فایل مورد نظر را جستجو کنید.
    اتوماسیون حذف فایل
    متن دلخواه در نوار وضعیت.
    بازیابی نوار وضعیت
    خط در حال اجرا در نوار وضعیت.

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

    محتوا را در یک فایل متنی کپی کنید.
    داده ها را به txt صادر کنید.
    داده ها را به html صادر کنید.
    داده هایی را وارد کنید که به بیش از 256 ستون نیاز دارند.
    ایجاد پشتیبان گیریفایل های ارزشمند
    شمارش تعداد باز شدن فایل ها
    نمایش مسیر فایل در سلول فعال.
    کپی کردن محتویات یک فایل RTF در اکسل.
    کپی کردن داده ها از یک کتاب کار بسته
    استخراج اطلاعات از یک فایل بسته
    جستجوی کلمه در فایل ها
    یک فایل متنی ایجاد کنید و متن را در فایل وارد کنید.
    ایجاد یک فایل متنی و وارد کردن متن (تشخیص انتهای فایل).
    ایجاد اسناد Wordمستقر جداول اکسل.
    دستورات ایجاد و حذف دایرکتوری ها.
    دایرکتوری فعلی را دریافت کنید.
    دایرکتوری را تغییر دهید

    مشاهده تمام فایل ها در یک دایرکتوری
    مشاهده تمام فایل ها در یک دایرکتوری
    کار کردن منطقه مایکروسافتبرتری داشتن.
    کتاب کار.
    تعداد نام کتاب کار
    حفاظت از کتاب کار
    ممنوعیت چاپ کتاب
    باز کردن یک کتاب (یا فایل های متنی).
    باز کردن یک کتاب و افزودن متن به سلول A1.
    چقدر کتاب باز است.
    بستن تمام کتاب ها
    بستن دفترچه کار فقط در صورت برآورده شدن شرایط.
    کتاب کار را با نامی که تاریخ فعلی است ذخیره کنید.
    آیا کتاب کار ذخیره شده است یا خیر.
    با یک برگه کتاب بسازید.
    یک کتاب ایجاد کنید.
    حذف نام های ناخواسته
    تکثیر سریع کتاب کار.
    مرتب سازی برگه ها
    جستجو کردن حداکثر مقداردر تمام صفحات کتاب
    کاربرگ.
    بررسی اینکه آیا کاربرگ محافظت شده است یا خیر.
    لیست برگه های مرتب شده
    یک برگه جدید ایجاد کنید.
    یک برگه جدید ایجاد کنید.
    برگه ها را بسته به تاریخ حذف کنید.
    کپی کردن برگه در کتاب
    برگه را کپی کنید کتاب جدید(ایجاد شده).
    جابجایی ورق در کتاب
    چندین برگه را به یک کتاب کار جدید منتقل کنید.
    جایگزین کن فایلی که وجود داره.
    ورق زدن کتاب.
    یک سرصفحه و پاورقی با نام کتاب، برگه و تاریخ فعلی درج کنید.
    آیا ورق وجود دارد؟
    آیا ورق وجود دارد؟
    نمایش تعداد برگه های کتاب کار فعال.
    نمایش تعداد برگه های کتاب کار فعال به عنوان لینک.
    نمایش نام برگه های فعال به نوبه خود.
    نمایش نام و شماره برگه کتاب کار فعلی.
    ورق را نامرئی کنید.
    در همه برگه ها چند صفحه وجود دارد؟
    سلول و محدوده (ستون ها و ردیف ها).
    در حال کپی کردن ردیف ها در برگه دیگر
    ستون ها را در برگه دیگری کپی کنید.
    تعداد سلول های حاوی مقادیر مشخص شده را بشمارید.
    تعداد سلول ها را در یک محدوده که حاوی مقادیر مشخص شده است بشمارید.
    تعداد سلول های قابل مشاهده در یک محدوده را بشمارید.
    تعیین تعداد سلول ها در یک محدوده و مجموع مقادیر آنها.
    شمارش تعداد سلول ها
    محاسبه مجدد خودکار داده های جدول زمانی که مقادیر آن تغییر می کند.
    وارد کردن داده ها در سلول ها
    وارد کردن داده ها با استفاده از فرمول ها
    ورود اطلاعات سریال
    داده های متنی را در سلول ها وارد کنید.
    خروجی در خانه های نام کتاب، برگه و تعداد برگه ها.
    حذف خطوط خالی
    حذف خطوط خالی
    حذف خطوط خالی
    حذف یک ردیف بر اساس شرط
    حذف خطوط پنهان.
    ردیف های مخفی استفاده شده یا ردیف های با ارتفاع صفر را حذف کنید.
    حذف موارد تکراری با ماسک

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

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

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

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

    فهرست یادداشت ها در یک لیست جداگانه.
    فهرست یادداشت ها در یک لیست جداگانه.

    شمارش تعداد یادداشت ها
    شمارش یادداشت ها
    سلول های دارای نظرات را انتخاب کنید.
    نمایش تمام یادداشت ها
    رنگ یادداشت ها را تغییر دهید
    اضافه کردن یادداشت ها
    اضافه کردن یادداشت به یک محدوده بر اساس شرایط.
    انتقال نظر به سلول و برگشت.

    انتقال مقادیر از یک سلول به یک نظر.
    زبانه های سفارشی روی روبان.
    افزودن نوار ابزار
    افزودن دکمه به نوار ابزار
    پنل با یک دکمه
    پنل با دو دکمه.
    ایجاد پنل در سمت راست

    ایجاد یک منوی سفارشی (گزینه 1).
    ایجاد یک منوی سفارشی (گزینه 2).
    ایجاد یک منوی سفارشی (گزینه 3).
    ایجاد یک منوی سفارشی (گزینه 4).
    ایجاد یک منوی سفارشی (گزینه 5).
    ایجاد یک منوی سفارشی (گزینه 6).
    فهرستی از آیتم های منوی اصلی اکسل ایجاد کنید.
    ایجاد لیستی از آیتم های منوی زمینه
    نمایش نوار ابزار تحت شرایط خاص
    مخفی کردن و نمایش نوار ابزار
    برای دکمه های من راهنمای ابزار ایجاد کنید.
    یک منو بر اساس داده های کاربرگ ایجاد کنید.
    ایجاد یک منوی زمینه
    قفل منوی زمینه
    اضافه کردن یک دستور به منوی Tools.
    افزودن یک دستور به منوی View
    ایجاد پنل با لیست
    کارتون با دستیار در نقش عنوان.
    تکمیل کمک کننده با متن، عنوان، دکمه و نماد.
    گزینه های کمکی جدید
    از Fill Color Wizard استفاده کنید.
    پنجره دیالوگ.
    تابع INPUTBOX (از طریق وارد کردن مقدار).
    پیش نمایش تماس
    تنظیم ورودی داده در کادر محاوره ای

    کادر محاوره ای (باز کردن فایل) را باز می کند.
    کادر محاوره ای (Print) را باز می کند.
    سایر جعبه های گفتگو
    فراخوانی مرورگر از اکسل.
    کادر محاوره ای ورود اطلاعات
    کادر محاوره ای تنظیمات فونت
    مقادیر پیش فرض.
    قالب بندی متن جداول. مرزها و پر کردن.
    نمایش لیستی از فونت های موجود
    از متن تمام اعداد انتخاب کنید.
    حروف بزرگ فقط در ابتدای متن.
    شمارش تعداد تکرارهای متن جستجو شده.
    انتخاب یک عنصر دلخواه از متن.
    نمایش متن به عقب
    متن انگلیسی با حروف بزرگ.
    راه اندازی جدول نمادها از اکسل.
    اطلاعات مربوط به کاربر، کامپیوتر، چاپگر و غیره
    دریافت نام کاربری
    نمایش رزولوشن مانیتور
    اطلاعاتی در مورد چاپگر مورد استفاده دریافت کنید.
    اطلاعات مربوط به دیسک های کامپیوتر را مشاهده کنید.
    فرم های کاربر
    نمودار.
    ساخت نمودار با استفاده از ماکرو
    ذخیره نمودار در یک فایل جداگانه.
    با کلیک یک دکمه نمودارها را بسازید و حذف کنید.
    لیستی از نمودارها را در یک پنجره جداگانه نمایش دهید.
    اعمال یک پالت رنگ تصادفی
    اثر شفافیت نمودار
    ساخت نمودار بر اساس داده های چند کاربرگ.
    برای داده های نمودار برچسب ایجاد کنید.
    برنامه های مختلف
    برنامه تدوین جدول کلمات متقاطع.
    کاور DVD ایجاد کنید.
    بازی "میدان مین".
    بازی "حدس بزن حیوان".
    محاسبه بر اساس سلول های یک رنگ خاص.
    سایر توابع و ماکروها.
    فراخوانی کلیدهای عملکرد
    محاسبه میانگین حسابی.
    ترجمه اعداد به "پول".
    نزدیکترین دوشنبه را جستجو کنید.
    شمارش تعداد سالهای کامل
    محاسبه میانگین موزون.
    عدد ماه را به نام آن تبدیل کنید.
    استفاده از پیوندهای نسبی
    تبدیل صفحه گسترده اکسل به فرمت HTML.
    مولد اعداد تصادفی
    اعداد تصادفی - بر اساس محدوده.
    اعمال یک تابع بدون وارد کردن آن در سلول.
    شمارش اشیاء نامگذاری شده
    فیلتر خودکار را با ماکرو فعال کنید.
    ایجاد یک خط در حال اجرا.
    ایجاد یک تصویر در حال اجرا
    چرخش اشکال خودکار.
    فراخوانی جدول رنگ.
    ایجاد یک ماشین حساب.
    انحراف نام خانوادگی، نام و نام خانوادگی.
    تاریخ و زمان.
    تاریخ و زمان خروجی
    تاریخ و زمان خروجی
    گرفتن تاریخ سیستم
    تاریخ و ساعت را استخراج کنید.
    تابع DateFull. نسخه MS Office مورد استفاده مشخص نشده است.