مدیریت خطا در اکسل با توابعی مثل IFERROR
بحث مدیریت خطا در اکسل اهمیت خیلی زیادی داره. خطا لزوما بدلیلی وجود اشکال در تابع رخ نمیده. هر خطایی معنی و علتی داره و باید توابع مدیریت خطا (مثل تابع Iferror ) و خطاها رو خوب بشناسیم. بعد از اینکه انواع خطا رو شناسایی کردیم، حالا باید با نحوه برخورد با این خطاها و مدیریت اونها آشنا بشیم.
مدیریت خطا در فرمول نویسی به این معنی هست که چه کنیم تا در صورت بروز خطا در خروجی فرمول، خطا نمایش داده نشه و بجاش مثلا فرمول دیگه ای، عبارت خاص یا خالی نمایش داده بشه.
توابعی که برای مدیریت خطا استفاده میشن به شرح زیر است:
تابع IFERROR
این تابع ۲ آرگومان به شرح زیر داره:
Value: سلول یا فرمولی که ممکنه خروجی خطا داشته باشه یا نه.
Value_If_Error: در صورتی که آرگومان اول خطا داشته باشه، این آرگومان نشون داده میشه.
مثال:
میدونیم که تابع Vlookup در صورتی که داده مورد جستجو رو پیدا نکنه خطای #NA() نشون میده. برای اینکه این خطا رو نبینیم، مطابق شکل ۱ عمل میکنیم. تابع vlookup به عنوان آرگومان اول تابع Iferror قرار داده میشه و چون میخوایم جطاها رو هیچی نشون نده، آرگومان دوم تابع Iferror رو “” میذاریم.
شکل ۱- مدیریت خطای تابع Vlookup با استفاده از Iferror
تابع ISERR
این تابع ۱ آرگومان به شرح زیر داره:
Value: سلول یا فرمولی که ممکنه خروجی خطا داشته باشه یا نه. اگر فرمول مورد نظر خطا داشته باشه، خروجی این تابع true و اگر خطا نداشته باشه خروجی False خواهد داشت.
تابع ISERROR
این تابع ۱ آرگومان به شرح زیر داره:
Value: سلول یا فرمولی که ممکنه خروجی خطا داشته باشه یا نه. اگر فرمول مورد نظر خطا داشته باشه، خروجی این تابع true و اگر خطا نداشته باشه خروجی False خواهد داشت.
نکته:
تفاوت تابع Iserr و Iserror در خطای #NA() هست.تابع Iserr خطای #NA() رو به عنوان خطا در نظر نمیگیره و از اون صرفنظر میکنه اما تابع Iserror خطای #NA() رو در نظر میگیره. علت هم این هست که خطای #NA() خطای کاربردی و خاصی هست که در تهیه نمودارها و داشبورد، کاربردهای خاص داره.
ویژگی این دو تابع نسبت به تابع Iferror اینه که به ازای خطا نبودن هم میتونیم خروجی متفاوت از خروجی خود تابع رو داشته باشیم. برای مشاهده کاربرد تابع Iserror حتما پست آموزشی تابع Find رو مطالعه کنید.
تابع ISNA
این تابع چک میکنه که آیا خروجی فرمول مورد نظر خطای #NA() هست یا نه. خروجی تابع اگر خطا داشته باشه True و اگه نداشته باشه False خواهد بود.
تابع Error.Type
این تابع شماره خطا رو برمیگردونه. از این تابع میتونید برای کنترل نوع خطا استفاده کنید و با If ترکیب کنید. مثلا اگه شماره خطا ۴ بود متوجه میشیم که مرجع تابع حذف شده یا اگه ۲ بود متوجه میشیم که عددی تقسیم بر ۰ شده و … .
خطا | عدد خطا |
---|---|
#NULL! | ۱ |
#DIV/0! | ۲ |
#VALUE! | ۳ |
#REF! | ۴ |
#NAME | ۵ |
#NUM! | ۶ |
#N/A | ۷ |
#GETTING_DATA | ۸ |
Anything else | #N/A |
مدیریت خطا مبحث پرکاربرد و مهم و البته ساده ای هست. حتما سعی کنید به ظرافت های این مبحث مسلط بشید و تفاوت ها رو در ذهن داشته باشید.
مباحث زیر هم مطالعه کنید:
ممنون نحوه خرید فیلم چطوریه
خواهش میکنم
اول اگر در سایت عضو نیستید، عضو بشید
بعد دکمه افزودن به سبر خرید رو بزنید و مسیر رو ادامه بدید.
لینک ویدئو هر جلسه براتون ارسال میشه.
این قیمت هر جلسه است یا کلی هستش و ضمنا فاصله جلسات چند روزه و در صورت بروز اشکال چطور میتونم کمک بگیرم
برای کل جلسات هست.
فاصله جلسات هفتگی هست.
در صورت بروز مشکل میتونید از روش هایی که در قسمت تماس با ما تعیین شده با ما درمیون بذارید.
سلام وقتتون بخیر اطلاعات موجود در سایتتون بسیار کاربردیه و تازه این سایت رو پیدا کردم و مشکلات که برام به وجود آورده حل کرده یه درخواست دارم من در شهرستان بجنورد هستم و علاقه دارم که برنامه نویسی vba رو یاد بگیرم ولی نمیدونم از کجا شروع کنم چی بخونم و ضمنا اکسل رو تا حدودی بلدم ممنون میشم کمک کنید
سلام
خدا روشکر
خوشحالیم که این موضوع و میشنویم.
در خصوص VBA چون خیلی مهمه که پایه ای و از راهش وارد بشید، پیشنهاد میکنم از ویدئوی دوره ای که اخیرا برگزار شد استفاده کنید…
بسیار کامل و واضح توضیح داده شده.
https://excelpedia.net/product/vba/