سبد خرید
0

هیچ محصولی در سبد خرید نیست.

تمام دسته ها
  • تمام دسته ها
  • Power BI
  • Power Pivot
  • Power Query
  • ابزارها
  • افزونه ها
  • اکسل مدیا
  • توابع اکسل
  • دسته‌بندی نشده
  • دیده بان
  • گوگل شیت
  • مسائل کاربردی
  • معرفی کتاب
  • نمودار ها
  • وی بی - ماکرو

بدست آوردن Kامین عدد کوچک با تابع Small در اکسل

تابع small در اکسل
۵/۵ - (۱۲ امتیاز)

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

آرگومان های این تابع به شرح زیر است:

Array: محدوده اعداد که میخواهیم از بین آنها کوچکترین ها رو انتخاب کنیم. جنس این آرگومان Range هست.

K   :K امین عدد کوچک از محدوده مورد نظر. جنس این آرگومان عدد هست.

اگر بخوایم تعریف یک خطی از این تابع ارائه بدیم، باید بگیم که بین یک مجموعه عدد، Kامین عدد کوچیک رو بر میگردونه.

مثال: فرض کنید داده هایی مطابق شکل ۱ داریم و میخوایم این داده ها رو از کوچک به بزرگ مرتب کنیم.

مرتب کردن اعداد از کوچک به بزرگ-تابع Small با ستون کمکی

شکل ۱- تابع small در اکسل – مرتب کردن اعداد از کوچک به بزرگ، با ستون کمکی

همونطور که در شکل ۱ نمایش داده شده، تابع Small بصورت زیر نوشته شده:

=SMALL($A$2:$A$13,C2)

تفسیر این تابع این هست که در محدوده A2:A13 اولین عدد کوچک رو نمایش بده. (در سلول C2 نوشته شده ۱ که یعنی اولین و چون تابع Small هست یعنی اولین عدد کوچک).

علامت های $ هم بدلیل درگ کردن تابع گذاشته شده که برای مطالعه منطق و چگونگی این کار، حتما مقاله اصول فرمول نویسی حرفه ای در اکسل رو مطالعه کنید.

همونطور که در شکل ۱ مشاهده کردید، برای تعیین K از سلول کمکی (C2:C13) استفاده کردیم. حالا برای اینکه از سلول کمکی استفاده نکنیم، میتونیم از تابع ROW استفاده کنیم. این تابع شماره ردیف سلولی که بهش داده میشه رو بر میگردونه. یعنی خروجی Row(B3) عدد ۳ هست. پس از این تابع برای تولید عدد استفاده میکنیم. به شکل ۲ دقت کنید، بجای استفاده از سلول کمکی از این تابع برای تولید K استفاده شده.

مرتب کردن اعداد از کوچک به بزرگ-تابع Small بدون ستون کمکی

شکل ۲- تابع small در اکسل – مرتب کردن اعداد از کوچک به بزرگ-تابع Small بدون ستون کمکی

همونطور که در شکل ۲ میبینید، برای تعیین K از تابع Row استفاده شده.

=SMALL($A$2:$A$13,ROW(A1))

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

سوال:

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

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

نکته:
یکی از راههای تثبیت توابع و تسلط در فرمول نویسی حل یک مسئله به راه های مختلف هست.
کلیدواژه : تابع Smallمتوسط
133

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

دیدگاه کاربران
  • ندا نادربابا ۱۳ مهر ۱۴۰۲ / ۷:۵۸ ق٫ظ

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

    • آواتار
      حسنا خاکزاد ۱۴ مهر ۱۴۰۲ / ۶:۴۴ ب٫ظ

      درود بر شما
      میتونید با منطق ارایه ای این فرمول رو استفاده کنید
      =MIN(IF(A1:B6>E1,A1:B6))

  • م م l ۲ فروردین ۱۴۰۱ / ۵:۴۷ ب٫ظ

    سلام
    اگر بخواهیم در یک ماتریس مثلا۵*۵ وقتی شماره ستون را می دهیم اعداد داخل ان ستون را برای ما به همان ترتیب لیست کند، چکار باید بکینم؟

    • سامان چراغی ۲ فروردین ۱۴۰۱ / ۱۱:۳۸ ب٫ظ

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

  • حمیدرضا ۳ بهمن ۱۳۹۹ / ۲:۴۹ ق٫ظ

    با سلام
    چطور میشه با استفاده از تابع small در داخل یک سلول عدد رو از متن جدا کرد؟؟

    • آواتار
      حسنا خاکزاد ۴ بهمن ۱۳۹۹ / ۱۱:۵۰ ق٫ظ

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

  • محمد ۲۳ مهر ۱۳۹۹ / ۱۰:۲۹ ق٫ظ

    سلام
    چطور میشه در یک ستون، kامین عدد کوچک از بین سطرهایی که داده های ستون ماقبل اونها شرط مشخصی رو رعایت میکنن، پیدا و ادرس دهی کرد؟
    مثلا دو تا ستون داریم، ستون اول اسم افراد و ستون دوم مقدار فروش اون ها، میخوایم در ستون دوم از بین اعدادی که مقابل اسم های علی در ستون اول نوشته شدن، kامین عدد کوچک رو پیدا و ادرس دهی کنیم. البته بدون استفاده از ابزار فیلتر و به صورت داینامیک. ممنونم

    • آواتار
      حسنا خاکزاد ۲۷ مهر ۱۳۹۹ / ۱۰:۳۴ ق٫ظ

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

  • حسین لک زایی ۲۶ اسفند ۱۳۹۷ / ۱۰:۴۲ ق٫ظ

    سلام بسیار عالی بود .فقط یک سوال برام پیش اومد.در این فرمول وقتی داده ها بر اساس کوچک ویا بزرگترین مرتب می شوند اگر هر داده مربوط به یک گروه خاص باشد مثلاa.b.cو…نام گروه در سلول کنار آن درج شده باشد نام گروه چگونه براساس کوچکترین ویا بزرگترین بصورت اتوماتیک مرتب گردد؟
    باتشکر از شما

    • آواتار
      حسنا خاکزاد ۲۶ اسفند ۱۳۹۷ / ۱۱:۴۸ ق٫ظ

      درود بر شما
      باید با استفاده از تابع match مکان عدد رو پیدا کنید و از طریق تابع index حروف رو هم مرتب کنید. ترکیب تووابع small, index, match و …

  • حامد ۲۱ دی ۱۳۹۷ / ۳:۱۳ ب٫ظ

    با سلام
    در جاهای مختلف مثل همینجا دیدم برای K از دستور row کمک میگیرند. علت اینکه مستقیما عدد نمی گذارید چیست؟
    =LARG(C1:C10,1)

    • سامان چراغی ۲۱ دی ۱۳۹۷ / ۶:۱۴ ب٫ظ

      سلام
      استفاده از چنین روش هایی که به جای عدد ثابت از توابع استفاده میشه باعث میشه فرمول با درگ کردن و یا اضافه یا حذف ستون و ردیف در شیت جواب صحیح را برای ما ایجاد کند.

  • مهدی ۲۱ دی ۱۳۹۷ / ۱۱:۳۱ ق٫ظ

    سلام
    ضمن تشکر
    می خواهم اگر در ستون A اعداد تکراری وجود داشت آنرا در نظر نگیرد و نتیجه عدد بعد از آن را اعلام کند

  • vahid ۱۳ تیر ۱۳۹۷ / ۲:۰۷ ب٫ظ

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

  • mmahdih ۹ تیر ۱۳۹۷ / ۱۰:۳۶ ق٫ظ

    موردی که دوست عزیزمون فرمودند یکی کمتر میاد
    چرا ؟؟

    • آواتار
      حسنا خاکزاد ۹ تیر ۱۳۹۷ / ۱۱:۲۰ ق٫ظ

      بله یک +۱ لازم داره. یعنی:

      یا اینکه

      :تبدیل بشه به

  • mmahdih ۹ تیر ۱۳۹۷ / ۱۰:۱۳ ق٫ظ

    سلام
    سرکار خانم خاکزاد و مهندس چراغی عزیز
    لینک کار نمیکنه ممنون میشم بررسی بفرمائید ؟؟
    مقاله اصول فرمول نویسی حرفه ای

    • اکسل پدیا ۹ تیر ۱۳۹۷ / ۲:۰۵ ب٫ظ

      سلام
      لینک اصلاح شد.
      تشکر از اطلاع رسانی

  • Mohammadashooryan ۲۴ فروردین ۱۳۹۷ / ۱:۴۶ ق٫ظ

    سلام
    =SMALL($A$2:$A$13,Rows($A$2:$A$13)-ROW(A1))

    • آواتار
      حسنا خاکزاد ۲۵ فروردین ۱۳۹۷ / ۱۰:۴۸ ق٫ظ

      درود بر شما
      احسنت …

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان