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

شکل ۱- تابع small در اکسل – مرتب کردن اعداد از کوچک به بزرگ، با ستون کمکی
همونطور که در شکل ۱ نمایش داده شده، تابع Small بصورت زیر نوشته شده:
=SMALL($A$2:$A$13,C2)
تفسیر این تابع این هست که در محدوده A2:A13 اولین عدد کوچک رو نمایش بده. (در سلول C2 نوشته شده ۱ که یعنی اولین و چون تابع Small هست یعنی اولین عدد کوچک).
علامت های $ هم بدلیل درگ کردن تابع گذاشته شده که برای مطالعه منطق و چگونگی این کار، حتما مقاله اصول فرمول نویسی حرفه ای در اکسل رو مطالعه کنید.
همونطور که در شکل ۱ مشاهده کردید، برای تعیین K از سلول کمکی (C2:C13) استفاده کردیم. حالا برای اینکه از سلول کمکی استفاده نکنیم، میتونیم از تابع ROW استفاده کنیم. این تابع شماره ردیف سلولی که بهش داده میشه رو بر میگردونه. یعنی خروجی Row(B3) عدد ۳ هست. پس از این تابع برای تولید عدد استفاده میکنیم. به شکل ۲ دقت کنید، بجای استفاده از سلول کمکی از این تابع برای تولید K استفاده شده.

شکل ۲- تابع small در اکسل – مرتب کردن اعداد از کوچک به بزرگ-تابع Small بدون ستون کمکی
همونطور که در شکل ۲ میبینید، برای تعیین K از تابع Row استفاده شده.
=SMALL($A$2:$A$13,ROW(A1))
پس دیدیم که چطور میشه با استفاده از فرمول نویسی، اعداد رو مرتب کرد.
سوال:
حالا اگر بخوایم اعداد از بزرگ به کوچک مرتب بشه چه باید کرد؟ تابعی مشابه Small وجود داره به نام تابع Large که در آینده توضیح داده خواهد شد. اما صرفنظر از این تابع و با استفاده از همین Small چطور میشه داده ها رو از بزرگ به کوچک مرتب کرد؟؟
جواب پیشنهادی خودتون رو در ادامه همین پست و در قالب کامنت ثبت کنید.





اگر بخوام در یک بازه دنبال کوچکترین عدد بعد از عدد صفر باشیم. چطور میتونیم بنویسم؟
درود بر شما
میتونید با منطق ارایه ای این فرمول رو استفاده کنید
=MIN(IF(A1:B6>E1,A1:B6))