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

8 دیدگاه
  • افزایش سرعت ماکروها اکسل ایجاد ماکرو در اکسل یک روش خارق العاده برای خودکارسازی فرآیندهای اکسل و صرفه جویی در وقت است. اما با بزرگتر شدن ماکروها ، ممکن است لازم باشد سرعت اجرای آنها را افزایش دهید.
    در این آموزش رایگان اکسل روش بررسی می شود که می توانید ماکروهای خود را تسریع کنید. برای ایجاد ماکروهای کارآمد در اکسل ، واقعاً باید این موارد را بدانید.
    اگر قبلاً از کاربران Excel VBA هستید ، ممکن است همه یا اکثر اینها را بدانید.
    شما با دیدن این آموزش سرعت ماکروها خود را چندین برابر خواهید کرد. پس تا آخر این آموزش با سون ریپلای همراه باشید.

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

    افزایش سرعت کد VBA در اکسل

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

    دوست عزیز پیشنهاد میشه این مطلب را هم ببینید
    آموزش راست به چپ کردن شیت اکسل 2019

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

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

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

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

    دوست عزیز پیشنهاد میشه این مطلب را هم ببینید
    آموزش اضافه کردن شیت در اکسل از طریق VBA همراه با فیلم آموزشی

    مجدد تاکید می کنم در انتهای ماکرو مجدد تنظیمات را به حالت قبل از تغییرات برگردانید
    برای این منظور هم کد زیر را به آخر کد های که قبلا قرار دادیم قرار بدهید .

     کلم آخر افزایش سرعت کد VBA در اکسل

    در پایان تبدیل کردن یک برنامه بزرگ به چندین برنامه کوچک نیز می تواند در سرعت ماکروها تاثیرگذار باشد.

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

    دوست عزیز پیشنهاد میشه این مطلب را هم ببینید
    همه چیز در مورد برنامه نویسی VBA اکسل

    میانگین امتیازات ۵ از ۵
    از مجموع ۵ رای
    اشتراک گذاری:

    مطالب مرتبط برای شما

    نظر یا سوال شما در این مورد چیست؟

    توجه داشته باشید که نشانی ایمیل شما منتشر نخواهد شد.

      مرتضی

      دم شما گرم باشه همیشه واقعا مفید بود

      پاسخ
      محمد محبوب

      عااااااالی بود مهندس دمت گررررررررررررم

      پاسخ
      qan456

      سلام جناب وکیل زاده وقت بخیر
      برای ایجاد تاخیر در اجرای ماکرو از این کد استفاده کردم declare sub sleep lib “kernel32” (byval milisecond as Long) و بعد ماژول را نوشتم و داخل ماژول از sleep استفاده کردم ولی اجرا نمیشه و کد بالا به رنگ قرمز درمیاد و اخطار میده.
      به نظرتون کجای کار اشتباست؟
      ممنون از وقتی که میذارین…

      پاسخ

        سلام دوست عزیز من!
        برای ایجاد تاخیر می توانی از فرمان Sleep استفاده کنی

        مانند کد زیر:

        Sub SleepVBA()
        Do Until i = 5
        i = i + 1
        Range(“A1”) = i
        Sleep 1000
        Loop
        End Sub

        البته توجه کن که زمان به میلی ثانیه است!!!!!
        موفق باشید مثل همیشه

        پاسخ
          qan456

          خدا قوت جناب وکیل زاده
          کدی که در نمونه آوردید را کپی کردم و در داخل ماژول گذاشتم ولی اجرا نشد و دستور sleep هایلایت شد و این پیغام را داد:
          sub or function not defined

          پاسخ

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

            Sub Masoudhosseini()

            Application.StatusBar = “Start”

            For i = 1 To 900
            Application.StatusBar = “MyNumber” & i
            Next i

            Application.StatusBar = “Finished”
            Application.StatusBar = False

            MsgBox “7REPLY.COM”

            End Sub

            موفق باشید

            پاسخ
              qan456

              ممنون از وقتی که گذاشتین…
              این کدی که الان فرستادین مثل دستور application.wait بک وقفه ایجاد می کند و بعد دستور را اجرا می کند.
              ولی من می خواستم یک دستوری را با سرعت کمتری اجرا کند که از دستور sleep استفاده کردم و در اول کد نویسی هم از کد
              declare sub sleep lib “kernel32” (byval milisecond asLong)
              استفاده کردم ولی اخطار میده و کد بالا قرمز میشه …..