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

18 دیدگاه
  • آموزش مرتب سازی اعداد به صورت اتوماتیک در اکسل با استفاده از کد VBA excel

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

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

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

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

     

    مرتب سازی اعداد به صورت اتوماتیک در اکسل

     

    مرتب سازی اعداد به صورت اتوماتیک در اکسل

    1- ابتدا فایل مورد نظر خود را برای مرتب سازی اتوماتیک اعداد باز کنید

    2- ما در این آموزش میخواهیم ستون B را برای مرتب سازی انتخاب کنیم
    برای این کار باید شما چند خط کد از سایت سون ریپلای کپی کنید که در ادامه برای شما قرار داریم

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

    3- برای وارد شدن به محیط VBA excel چند روش موجود است
    (1) با زدن کلید های Alt+F11  میتواند وارد محیط کد نویسی شوید

    30 ترفند و کلید میانبر اکسل

    یا روی یکی از شیت  های فعال  راست کلیک کنید و روی گزینه View Code کلیک کنید

     

    جلوگیری از اضافه کردن شیت در اکسل

     

    4- بعد از وارد شدن به محیط ویژوال بیسیک در سمت چپ روی شیت مورد نظر خود کلیک کنید اگر یک شیت دارد روی شیت 1 کلیک کنید

     

    جلوگیری از اضافه کردن شیت در اکسل

     

    5- در این مرحله کد زیر را کپی کنید و در محیط VBA جایگزین کنید

    دیگه کار تمام شد فایل را ذخیره کنید همان تور که  مشاهده میکنید اعداد ستون B بصورت اتوماتیک مرتب شد

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

    دوستان این آموزش رایگان اکسل هم در همینجا به پایان رسید تا یک آموزش دیگه در پناه حق باشید

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

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

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

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

      میرفتاحی

      Private Sub Worksheet_Change(ByVal Target As Range)
      On Error Resume Next
      If Not Intersect(Target, Range(“B:B”)) Is Nothing Then
      Range(“B1”).Sort Key1:=Range(“B2”), _
      Order1:=xlAscending, Header:=xlYes, _
      OrderCustom:=1, MatchCase:=False, _
      Orientation:=xlTopToBottom
      End If
      End Sub
      سلام 🌺در فرمول فوق میشه مرتب سازی ازبزرگ. به کوچک بشه ؟

      پاسخ
        وحید

        سلام وقت بخیر – شما موفق شدید از بزرگ ب کوچیک چیدمان کنید ؟

        پاسخ
      میرفتاحی

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

      پاسخ
      سیاوش محمدی

      سلام خسته نباشید
      مرسی از شما و سایت خوبتون و توضیحاتتون … نمیدونین با چه سختی ای شمارو پیدا کردم
      2 تا سوال داشتم
      1) اینکه من میخوام همین عملو برعکس انجام بدم و از بزرگ به کوچیک واسم مرتب کنه
      (اینکه میگین بریم تو data > sort&filter اینو امتحان کردم و این موقتی است )
      من میخوام با هر بار وارد کردن اطلاعات ،از بزرگ به کوچیک واسم مرتب کنه (مثل ویدیو بالا ولی برعکس)
      2) و اینکه برای مثال فکر کنین من تو بخش C از شماره 2 تا شماره 20 اطلاعات دارم و از 22 تا 40 اطلاعاتم متفاوت هست
      حالا میخوام 2 بار تو همون بخش C واسم اطلاعاتو مرتب کنه ولی با این تفاوت که اگر من تو قسمت 22 تا 40 عدد وارد کردم
      نمیخوام از 2 تا 40 واسم مرتب کنه میخوام تو همون 22 تا 40 بمونه و جاش با اطلاعات بالا تغییر نکنه
      آیا این کار شدنیه ؟ (و من تلاشمو کردم ولی نتونستم جواب بگیرم )
      ممنون میشم اگه جواب بدین

      پاسخ

        سلام درود خدمت شما دوست گرامی
        این مورد با این کد امکان پذیر نیست توی چند روز آینده به صورت کامل سورت کردن داده ها را آموزش خواهیم دارد
        خیلی از دوستان هم این درخواست را داشتین عضو کانال های ما باشید اطلاع میدهیم خود تون موفق باشید
        مثل همیشه

        پاسخ
          حیمد

          سلام. می خوام دو بار این شرط رو تکرار کنم، کدش چی میشه؟ هم می خوام ستون B مرتب بشه، هم ستون J یه سری تاریخ دارم میخوام بر اساس اون مرتب بشه

          پاسخ

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

            پاسخ
      میثم

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

      پاسخ

        برای مرتب کردن نمرات از ابزار sort از مسیر زیر استقاده می کنیم.(البته مسیر های دیگری هم وجود دارد
        Data>Sort&Filter>So

        اکنون در پنجره باز شده از تب Order گزینه Smallest to Largest را انتخاب می کنیم.و نتیجهبعدی می بینی
        موفق باشید

        پاسخ
      محمدرضا خدام

      سپاس و درود از توضیحات شما اگر امکان دارد یک نمونه فایل برای بنده ارسال بفرمایید سپاسگذارم .

      پاسخ

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

        پاسخ
      a

      لطفا دیگه شما توضیح نده خیلی سریع و بد و یکم لحجه دار توضیح میدیه آدم هیچی نمیفهمه

      پاسخ

        ارادت خدمت شما دوست گرامی به نظر من شما به توضیح دادن ما کاری نداشته باشید می توانید اگه خوشتون نیومد آموزش را نبینید موفق و پیروز باشید

        پاسخ
      moslem63

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

      پاسخ
      moslem63

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

      پاسخ
      fences

      سلام
      وقت شما بخیر
      چطور می تونم همین سورت کردن بصورت تعداد سطر مشخص انجام بدم؟
      مثلا از سطر 2 تا سطر 10

      پاسخ

        درود خدمت شما دوست عزیز
        شما می توانید در قسمت کد نویسی که به جای سطر کامل سطر مشخص را بدهید به طور مثل (B10:B20) به این صورت شما مشخص می کنید که فقط سطر که شما تعین کردین را مرتب کنید
        موفق باشید

        پاسخ