تابع ISERROR در اکسل
تابع ISERROR یکی از توابع مفید اکسل برای تشخیص خطا در نتیجه یک فرمول یا مقدار سلول است. این تابع زمانی مفید است که بخواهید حضور هر نوع خطا (مانند #N/A، #DIV/0!، #VALUE!، #REF! و …) را بررسی کرده و بر اساس آن تصمیم بگیرید یا مقدار جایگزین نمایش دهید.
فرمت و مقدار بازگشتی
فرمت تابع:
=ISERROR(value)پارامتر value میتواند یک مقدار، ارجاع سلولی یا یک فرمول باشد. خروجی تابع مقدار منطقی TRUE در صورت وجود هر گونه خطا و FALSE در صورت نبود خطا است.
مثال ساده
=ISERROR(A1)اگر سلول A1 حاوی یکی از خطاهای استاندارد اکسل باشد، مقدار TRUE و در غیر اینصورت FALSE برمیگرداند.
مقایسه با توابع مشابه: ISERR، ISNA و IFERROR
| تابع | چه خطاهایی را تشخیص میدهد | نکته |
|---|---|---|
| ISERROR | تمام خطاهای اکسل (#N/A، #DIV/0!، #VALUE!، #REF!، #NAME?، #NUM!) | عمومیترین تابع برای تشخیص هر خطا |
| ISERR | تمام خطاها به جز #N/A | اگر میخواهید #N/A را نادیده بگیرید مفید است |
| ISNA | فقط #N/A | مفید برای بررسی نتایج جستجوی ناموفق |
| IFERROR | تمام خطاها، و امکان بازگرداندن مقدار جایگزین در همان فرمول | کوتاهتر و معمولاً کارآمدتر از ترکیب IF+ISERROR |
نمونه کاربرد رایج: مدیریت نتایج VLOOKUP
یک سناریوی متداول زمانی است که VLOOKUP مقدار مورد نظر را پیدا نکند و #N/A برگردد. با ISERROR میتوان خطا را تشخیص داد و متن مناسب نمایش داد.
=IF(ISERROR(VLOOKUP(E2,$A$2:$B$100,2,FALSE)),"پیدا نشد",VLOOKUP(E2,$A$2:$B$100,2,FALSE))توضیح: این فرمول ابتدا بررسی میکند که آیا VLOOKUP دارای خطاست یا خیر. اگر خطا باشد، متن “پیدا نشد” نمایش میدهد و در غیر این صورت نتیجه VLOOKUP را نشان میدهد.
نکته عملکردی: در مثال بالا VLOOKUP دو بار ارزیابی میشود — یکبار در ISERROR و یکبار در شاخه موفق IF. اگر محدوده بزرگ یا فرمول سنگین باشد، این مسئله میتواند باعث کندی شود. راهحل بهتر استفاده از IFERROR است:
=IFERROR(VLOOKUP(E2,$A$2:$B$100,2,FALSE),"پیدا نشد")توضیح: IFERROR فقط فرمول را یکبار ارزیابی میکند و در صورت هر نوع خطا مقدار جایگزین را بازمیگرداند. بنابراین کارآمدتر و خلاصهتر است.
موارد کاربرد و ترکیبات حرفهای
- کنترل ورودیهای کاربر: جلوگیری از نمایش خطاهای نامربوط برای کاربران و نمایش پیامهای واضح.
- محاسبات شرطی در محدودهها: جایگزینی خطاها با صفر برای محاسبه جمع یا میانگین بدون دخالت خطاها.
- فرمولهای آرایهای: بررسی و محاسبه مقادیر دریک مجموعه با حذف خطاها.
- قواعد قالببندی شرطی: استفاده از ISERROR برای هایلایت کردن سلولهای دارای خطا جهت اصلاح سریعتر.
مثال: جمع مقدارها با نادیده گرفتن خطاها
=SUM(IF(ISERROR(A1:A10),0,A1:A10))این فرمول آرایهای مقادیر A1 تا A10 را جمع میکند و هر سلولی که خطا داشته باشد را معادل صفر در نظر میگیرد. (در نسخههای قدیمی اکسل باید با Ctrl+Shift+Enter وارد شود؛ در اکسلهای جدید که توابع پویا پشتیبانی میشوند به صورت عادی کار میکند.)
نکات و هشدارهای فنی
- تشخیص همه خطاها: ISERROR همه انواع خطا را پوشش میدهد. اگر بخواهید فقط #N/A را بررسی کنید از ISNA استفاده کنید.
- کارایی: ترکیب IF+ISERROR ممکن است منجر به تکرار محاسبات شود (مثلاً دو بار اجرای VLOOKUP). IFERROR از این نظر معمولاً بهتر است.
- قابل اعتماد بودن: بعضی مواقع بهتر است علت خطا را برطرف کنید تا آن را پنهان کنید. پنهان کردن خطاها میتواند باعث نادیده گرفتن مشکل اساسی در دادهها شود.
- تفاوت در نسخهها: IFERROR از اکسل 2007 به بعد اضافه شده است؛ در نسخههای قدیمیتر باید از ISERROR+IF یا راهکارهای دیگر استفاده کنید.
مثال ترکیبی پیشرفته: میانگین بدون در نظر گرفتن خطاها
=AVERAGE(IF(ISERROR(B2:B100),"",B2:B100))این فرمول آرایهای با حذف سلولهای دارای خطا میانگین بقیه را محاسبه میکند. توجه کنید که در نسخههای قدیمی نیاز به Ctrl+Shift+Enter دارید.
کاربرد در گزارشسازی و Dashboards
در داشبوردها و گزارشهای تحت اکسل، نمایش خطای خام میتواند برای بیننده گیجکننده یا ناخوشایند باشد. استفاده هوشمندانه از ISERROR یا IFERROR باعث میشود خروجیهای تمیزتر و حرفهایتری ارائه شود، مثل نمایش “داده ناموجود” یا جایگزینی صفر در جداول تجمیعی.
مثال قالببندی شرطی برای هایلایت خطا
میتوانید در بخش Conditional Formatting فرمولی مانند زیر وارد کنید تا هر سلولی که خطا دارد رنگ بگیرد:
=ISERROR(A1)توضیح: این قانون را روی بازه مورد نظر اعمال کنید تا سلولهای دارای هرگونه خطا به سرعت مشخص شوند.
جمعبندی و نکات پایانی
تابع ISERROR ابزاری ساده ولی قدرتمند برای تشخیص وجود خطا در محاسبات است. برای انتخاب بین ISERROR، ISNA، ISERR و IFERROR به نوع خطایی که میخواهید تشخیص دهید و به کارایی فرمولها توجه کنید. در حالت کلی برای جایگزینی ساده و جلوگیری از ارزیابی دوباره فرمولها، IFERROR راه حل بهتری است؛ ولی اگر نیاز به تشخیص نوع خاصی از خطا دارید از ISNA یا ISERR استفاده کنید.
در پایان، همیشه سعی کنید منبع خطا را پیدا و اصلاح کنید تا دادهها و محاسبات شما سالم و قابل اعتماد باقی بمانند؛ توابعی مثل ISERROR ابزاری برای مدیریت و نمایش مناسب خطا هستند، نه راهحل همیشگی برای پنهانسازی مشکلات دادهای.
آیا این مطلب برای شما مفید بود ؟




