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

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

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

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

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

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

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

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

    افزایش سرعت ماکروها اکسل – اکسل 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)
              استفاده کردم ولی اخطار میده و کد بالا قرمز میشه …..