تابع Sumif اکسل | محاسبه جمع شرطی در یک مجموعه داده

تابع Sumif اکسل
۴.۳/۵ - (۱۵ امتیاز)

آموزش تابع Sumif اکسل

فرض کنید در یک بانک اطلاعاتی می خواهیم جمع فروش یک محصول خاص را استخراج کنیم. یا جمع ساعات مرخصی یک کارمند را از بین لیست مرخصی ها محاسبه کنیم. همانطور که تا الان متوجه شده اید، در واقع عمل جمع را میخواهیم به یک شرط معطوف کنیم. این موضوع در اکسل بسیار پر استفاده است و تابع Sumif اکسل (برای یک شرط) و Sumifs (برای بیش از یک شرط) برای این مسئله اختصاص داده شده است. مثلا اگر بخواهیم جمع فروش یک محصول را در یک تاریخ خاص محاسبه کنیم، باید از Sumifs استفاده کنیم چرا که دو شرط داریم: یکی محصول و دیگری تاریخ مورد نظر.

نکته خیلی مهم
در این دو تابع، نکته ای که اهمیت دارد این است که بتوانیم شروط و محدوده های مربوط به آنها را به درستی تشخیص دهیم

 

در ادامه آرگومان های تابع Sumif را تشریح میکنیم:

Range: محدوده ای که شرط مورد نظر ما در آن وجود دارد.
Criteria: شرط مورد نظر.
[Sum_Range]: محدوده ای که عمل جمع بر روی آن انجام می شود. این آرگومان اختیاری است و زمانی که Range و Sum_Range مشترک است، می توانیم آن را در فرمول وارد نکنیم.

با ذکر چند مثال این تابع را شرح می دهیم:

مثال ۱: بانک اطلاعاتی مربوط به فروش محصولات مختلف و مبالغ فروش در تاریخ های مختلف موجود است. می خواهیم جمع فروش محصول ۲ محاسبه کنیم. طبق شکل ۱ تابع Sumif را می نویسیم.

تابع Sumif اکسل - نحوه ثبت تابع sumif

شکل ۱- تابع Sumif اکسل – نحوه ثبت تابع sumif

آرگومان اول: ستونی است که شرط ما در آن وجود دارد. ستون نام محصول یا محدوده A2:A20 انتخاب می شود.

=SUMIF(A2:A20,E2,B2:B20)

آرگومان دوم: شرط ما، یعنی کلمه محصول۲ است. که هم می توان به سل ارجاع داد و هم مستقیم در تابع نوشت. به این صورت: “محصول۲”

=SUMIF(A2:A20,E2,B2:B20)

آرگومان سوم: ستونی که عملیات جمع بر روی آن انجام می شود. ستون میزان فروش یا محدوده B2:B20 انتخاب می شود.

=SUMIF(A2:A20,E2,B2:B20)

نکته خیلی مهم
محدوده های Range و Sum range حتما باید هم اندازه و هم تراز باشند. یعنی از یک ردیف شروع شده و به یک ردیف ختم شود.

 

مثال ۲: در بالا گفتیم که آرگومان سوم تابع Sumif اختیاری است و می تواند در فرمول وجود نداشته باشد. به مثال زیر دقت کنید.

می خواهیم ببینیم جمع فروش های بیش از ۴۰۰۰۰ چقدر است. در این حالت فرمول به شرح زیر تغییر میکند:

=SUMIF(B2:B20,”>40000”)

در شکل ۲ مشاهده میکنید که آرگومان Sum-Range حذف شده است. چرا که عمل جمع قرار است روی همان محدوده شرط اعمال شود. پس می تواند حذف شود.

تابع Sumif اکسل - بدون آرگومان اختیاری

شکل ۲- تابع Sumif اکسل – بدون آرگومان اختیاری

حالا می خواهیم جمع فروش محصول ۲ را در تاریخ های معینی محاسبه کنیم. با توجه به اینکه بیش از یک شرط داریم، باید از Sumifs استفاده کنیم. حتما آموزش مربوط به Sumifs، که نکات کاربردی را در بر می گیرد را مطالعه کنید.

کلیدواژه : تابع Sumifمقدماتی
134

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

دیدگاه کاربران
  • omid ۵ خرداد ۱۳۹۸ / ۶:۲۶ ب٫ظ

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

    • سامان چراغی ۵ خرداد ۱۳۹۸ / ۹:۰۶ ب٫ظ

      سلام
      احتمالا اعدادی که در فایل هست به صورت متن هستند. که اگر اینطور باشه باید یک مثلث سبز رنگ کنار این سلول ها نشون میده. برای درست کردنش این سلول ها رو انتخاب کنید و گزینه Convert to Number رو بزنید.

  • الیاس نورزاده ۲۳ اردیبهشت ۱۳۹۸ / ۳:۲۱ ب٫ظ

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

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

      درود بر شما
      بسته به اینکه چه ساختاری داره و تاریخ چه جنسی هست و ….
      باید از Sumif استفاده کنید

  • سعید ۱۹ اسفند ۱۳۹۷ / ۱۰:۰۸ ب٫ظ

    با سلام و عرض ادب
    می خواهیم در یک سطر، محتویات سلولهای بین یک سلول تا سلول دیگری در همان سطر، را با هم جمع کنیم. اما سلول های شروع و پایان متغیر و بصورت تابع باشند. چگونه می توان اینکار را انجام داد؟
    از ترکیب توابع Sum و Address و Match استفاده کردم اما نتیجه ای حاصل نشد:

    =SUM((ADDRESS(6,MATCH('ورود داده ها'!$O$5,A5:BT5,0),1,1)):x6)

    از راهنمایی که می فرمایید صمیمانه سپاسگزارم.

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

      درود بر شما

      به اینصورت باید تغییر بدید:

      =SUM(indirect(ADDRESS(6,MATCH('ورود داده ها'!$O$5,A5:BT5,0),1,1)&":x6"))
      • سعید ۲۰ اسفند ۱۳۹۷ / ۲:۵۱ ب٫ظ

        بسیار عالی بود.
        ممنون و سپاسگزارم.

  • مهدی حسینی ۱۱ اسفند ۱۳۹۷ / ۱:۰۲ ب٫ظ

    خیلی ممنون

  • کاوه ۱۲ بهمن ۱۳۹۷ / ۱۱:۵۸ ق٫ظ

    من یک شرط خاص دارم میخوام ببینم میشه با این تابع نوشتش یا نه
    من ۳ ستون دارم که توی ستون سوم دو حالت داره که یا یک است یا صفر و این شرط به این صورت است که اگر مقدار ستون سوم ۱ بود مقدار ستون اول و ستون دوم باهم جمع شود اما اگر ستون سوم ۰ بود فقط مقدار ستون اول رو قرار بده و ستون دوم جمع نشود.

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

      درود بر شما

      شما باید از if استفاده کنید

      =if(C1=1,A1+B1,A1)

      مقاله زیر رو مطالعه کنید:
      https://excelpedia.net/if-function/

  • امیر ۲۰ مرداد ۱۳۹۷ / ۱۰:۳۲ ق٫ظ

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

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

      درود بر شما
      یک if دیگه اضافه کنید و همه اون if ها رو در قسمت value false بنویسید
      در قسمت value true هم صفر

      • امیر ۲۰ مرداد ۱۳۹۷ / ۲:۴۰ ب٫ظ

        بسیار سپاسگزار و ممنونم

  • Hossein Madadi ۱۹ اسفند ۱۳۹۶ / ۱۲:۲۲ ب٫ظ

    سلام
    مطالبی که در سایت گذاشتید برای من خیلی مفید بود.
    ممنون وهمیشه موفق باشید

    • آواتار
      حسنا خاکزاد ۱۹ اسفند ۱۳۹۶ / ۱:۵۵ ب٫ظ

      درود بر شما
      زنده باشید، لطف دارید

      موفق باشید

  • عباس احمدی ۱۸ بهمن ۱۳۹۶ / ۸:۵۲ ق٫ظ

    جناب آقای چراغی
    سلام علیکم
    در نوشتن یک تابع سئوال داشتم .
    چنانچه امکان دارد کمکم کنید.لطفا
    طرح مسئله :
    در شیت ۱ : اطلاعات در یک جدول موجود است که شامل ستونهای (ردیف ، تاریخ ، نام ) می باشد.
    می خواهم در جدول دیگر با درج یکی از ردیف های موجود در جدول اول ، نام نیز فراخوانی شود.
    توابع زیادی مثل , index,find,mach,sumif,sumifs,lookup,vlookup,hlookup را امتحان کردم ولی موفق نشدم.
    فایل مربوطه را برایتان به آدرس ایمیل ارسال نمودم . لطفا در صورت امکان تابع مورد نظر را در فایل اکسل نوشته و برایم ایمیل نمائید.
    قبلا از شما سپاسگزاری می کنم. احمدی

    • سامان چراغی ۱۸ بهمن ۱۳۹۶ / ۱:۵۰ ب٫ظ

      سلام
      از تابع VLookup استفاده کنید ولی آرگومان سوم تابع باید عدد ۵ باشه چون چند ستون پنهان شده تو جدول وجود داره.

      • عباس احمدی ۱۹ بهمن ۱۳۹۶ / ۸:۰۸ ق٫ظ

        جناب آقای سامان چراغی
        با سپاس فراوان
        با راهنمایی شما مشکل حل شد.
        شاد و موفق باشید.

  • احمدی ۱۱ آذر ۱۳۹۶ / ۸:۰۸ ق٫ظ

    جناب آقای چراغی
    سلام علیکم

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

    طرح مسئله :
    در شیت ۱ : اطلاعات در یک جدول موجود است که شامل ستونهای (ردیف ، شماره سند ، تاریخ ، کد حساب ، مبلغ ) می باشد.

    می خواهم مجموع اعداد ستون مبلغ مندرج در جدول را با توجه به کد مورد نظر در سلولی نشان دهد. که با فرمول SUMIFS توانستم.
    می خواهم مجموع اعداد ستون مبلغ مندرج در جدول را در یک بازه زمانی در سلولی نشان دهم . که با فرمول SUMPRODUCT توانستم.

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

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

    • سامان چراغی ۱۱ آذر ۱۳۹۶ / ۹:۱۸ ق٫ظ

      سلام جناب احمدی
      کافیه در فرمولی که با Sumproduct نوشتید شرط کد رو اضافه کنید، با توجه به فایلتون نتیجه فرمول به صورت زیر میشه:

      =SUMPRODUCT((L2:L17>=I13)*(L2:L17<=I16),O2:O17*(N2:N17=C12))
      
      • احمدی ۱۲ آذر ۱۳۹۶ / ۱۲:۳۶ ب٫ظ

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

        سئوال دیگری نیز داشتم چنانچه زحمتی نیست آن را هم راهنمایی فرمائید.

  • آناهید ۱۳ آبان ۱۳۹۶ / ۲:۵۸ ب٫ظ

    سلام
    چطورمیتونم با sumif جمع خانه های رنگی رو حساب کنم ؟
    این فرمول رو نوشتم جواب نداد SUMIF(B4:AE4؛ “white”)

    • سامان چراغی ۱۳ آبان ۱۳۹۶ / ۳:۳۵ ب٫ظ

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

      دانلود فایل

ارسال دیدگاه

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