تابع IFERROR اکسل

تابع IFERROR اکسل

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

قاعده کلی تابع IFERROR اکسل به شکل زیر هست:

(مقدار جایگزین در صورت وجود خطا در مقدار مورد بررسی ,مقدار مورد بررسی)IFERROR

حالا جدول زیر رو در نظر بگیرید. این جدول تاریخ، برنامه تولید و تعداد تولید واقعی یک روز رو برای یک کارگاه نشون میده. حالا اگر ما بخوایم درصد تحقق برنامه رو برای روزهای مختلف از تقسیم تعداد تولید بر تعداد برنامه بدست بیاریم و فرمولی که در ستون درصد تحقق برنامه قرار میدیم برابر  تعداد برنامه / تعداد تولید  باشه  همونطور که در جدول زیر میبینید در سلول‌های D5 و D8 با خطا مواجه میشیم چون در این تاریخ ها برنامه برابر صفر هست و تقسیم عدد بر صفر باعث بروز این خطا میشه.

A B C D
1 تاریخ تعداد برنامه تعداد تولید درصد تحقق برنامه
2 ۱۳۹۳/۰۲/۱۰ ۱۰۰۰ ۱۱۰۰ ۱۱۰%
3 ۱۳۹۳/۰۲/۱۱ ۸۰۰ ۶۵۳ ۸۲%
4 ۱۳۹۳/۰۲/۱۲ ۸۰۰ ۴۵۷ ۵۷%
5 ۱۳۹۳/۰۲/۱۳ ۰ ۵۷۰ #DIV/0!
6 1393/02/14 1200 750 ۶۳%
7 1393/02/15 500 360 ۷۲%
8 1393/02/16 0 487 #DIV/0!

برای اینکه این مشکل رو با استفاده از تابع  IFERROR اکسل حل کنیم فرمول سلول D2 رو که برابر  C2/B2   هست رو به

(“فاقد برنامه تولید”;IFERROR(C2/D2   تغییر میدیم و با کپی کردن این فرمول در تمام سلول های ستون D جدول ما به شکل زیر در میاد:

A B C D
1 تاریخ تعداد برنامه تعداد تولید درصد تحقق برنامه
2 ۱۳۹۳/۰۲/۱۰ ۱۰۰۰ ۱۱۰۰ ۱۱۰%
3 ۱۳۹۳/۰۲/۱۱ ۸۰۰ ۶۵۳ ۸۲%
4 ۱۳۹۳/۰۲/۱۲ ۸۰۰ ۴۵۷ ۵۷%
5 ۱۳۹۳/۰۲/۱۳ ۰ ۵۷۰ فاقد برنامه تولید
6 1393/02/14 1200 750 ۶۳%
7 1393/02/15 500 360 ۷۲%
8 1393/02/16 0 487 فاقد برنامه تولید

در واقع با اینکار اکسل بجای تمامی مقادیر خطا مقداری رو که ما در تابع IFERROR تعریف کردیم جایگزین میکنه.

26 Comments on “تابع IFERROR اکسل”

  1. معصومه

    سلام
    با سپاس از آموزش شما. من یه تعداد داده دارم که بعضی از سلولهایی که با دستور vlookup به دست آوردم error داده و الان میخوام یک ردیف رو که شامل 9 سلوله با هم جمع کنم که بعضی هاشون همونایی هستن که error دادن و نمیشه جمع زد. لطفا راهنماییم کنید که باید چیکارشون کنم.

    1. یاسین اسماعیل پور

      سلام
      از همین تابع iferror استفاده کنید. پارامتر دوم رو صفر قرار بدید

  2. mojtaba

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

  3. پوریا حیدری

    با عرض سلام لطفا ممنون خواهم شد راهنمائی بفرمائید چگونه در فرمول ذیل فرمول round را ترکیب نمائیم . (IF(Y157=AA157,AB157,((X157+AB157)/(AA157+H157))*Y157=

    با سپاس مجدد و تشکر از سایت مفیدتون .

    1. یاسین اسماعیل پور

      سلام
      کافیه همین فرمول رو داخل تابع Round بنویسید دیگه:
      =round((IF(Y157=AA157,AB157,((X157+AB157)/(AA157+H157))*Y157,0)

  4. محمدجوادمحمدی

    سلام
    سلام
    یک عدد مشخص مثال در جی یک داریم
    در ستون بی مقادیر داریم
    در ستون سی جمع مقادیر سلول بی با سلول قبلی
    حال میخوایم هرجا ستون سی عددش نزدیک شد حال کم یا زیاد یا مساوی عدد سلول بی متناظر تغییر کند به طوریکه جمع عدد سلول سی با سلول جی 1مساوی باشه؟
    تشکر

  5. محسن

    سلام. فکر میکنم منظورتون (“فاقد برنامه تولید”;IFERROR(C2/B2 باشه. مرسی از آموزش خوبتون

  6. مسعود

    سلام میخواستم تاخیر رو در محاسبه ساعت کاری انجام بدم مثلا ساعت ورود 8:10 دقیقه و 10 دقیقه تاخیر حالا اگه 7:50 اومده باشه تو لیست علامت ###### میزنه و اصلا جواب نمیده با iferror.
    ورود خروج تاخیر
    8:10 16:00 10 دقیقه
    7:50 16:00 ######
    ممنون از سایت خوبتون…

  7. ادریس

    سلام
    دوستان من میخام از یه sheet که نام و نام خانوادگی افراد در یه ستون قرار گرفته و کد ملی هاشون در یه ستون دیگه به عنوان data برای sheet اصلیم استفاده کنم..
    به این صورت که در sheet اصلی نام و نام خانوادگی هرکسی رو که تویه یه سلول تایپ کنم تویه سلول دیگه ای کدملی اون شخص از روی sheet دیتا بارگذاری شه..
    ممنون که راهنماییم کنین🙏🙏

پاسخ دهید

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