چگونه خطاهای #N/A را در فرمول های اکسل مانند VLOOKUP برطرف کنیم

مایکروسافت اکسل(Microsoft Excel) ممکن است زمانی که مقداری را وارد می‌کنید یا سعی می‌کنید عملی را انجام دهید که متوجه نمی‌شود، خطایی را برگرداند. انواع مختلفی از خطاها وجود دارد و هر خطا با انواع خاصی از اشتباهات مرتبط است که ممکن است مرتکب شده باشید.

خطای #N/A یک خطای استاندارد اکسل(Excel) است. زمانی ظاهر می شود که به داده ها به اشتباه ارجاع داده اید. به عنوان مثال، داده‌های ارجاعی که وجود ندارند یا خارج از جدول جستجو وجود دارند، یک خطای املایی در مقدار جستجو ایجاد کردند، یا یک کاراکتر اضافی به مقدار جستجو اضافه کردند (کاما، آپوستروف یا حتی یک کاراکتر فاصله).

از آنجایی که خطا زمانی رخ می دهد که شما به اشتباه یک مقدار جستجو را ارجاع داده اید، معمولاً با توابع جستجو مانند LOOKUP ، VLOOKUP ، HLOOKUP و تابع MATCH مرتبط است. بیایید به دلایل، یک مثال و برخی از رفع خطای #N/A نگاه کنیم.

دلایل خطای #N/A

در زیر دلایلی وجود دارد که می تواند باعث ایجاد خطای #N/A در کاربرگ شما شود:

  • شما یک مقدار جستجو را اشتباه نوشته اید (یا یک کاراکتر فاصله اضافی درج کرده اید)
  • شما یک مقدار را در جدول جستجو اشتباه نوشته اید (یا یک کاراکتر فاصله اضافی درج کرده اید)
  • محدوده جستجو به اشتباه در فرمول وارد شده است
  • شما از نوع داده متفاوتی برای مقدار جستجو نسبت به آنچه در جدول جستجو وجود دارد استفاده کرده اید (یعنی از متن به جای اعداد استفاده شده است(text instead of numbers) )
  • مقدار جستجویی که وارد کردید در جدول جستجو پیدا نشد

مثالی از خطای #N/A

بیایید از تابع VLOOKUP(use the VLOOKUP function) به عنوان مثال استفاده کنیم تا بفهمیم چگونه ممکن است پس از استفاده از توابع اکسل(Excel) مانند LOOKUP ، HLOOKUP یا MATCH با یک خطای #N/A مواجه شوید زیرا ساختار نحوی مشابهی دارند.

به عنوان مثال، فرض کنید که فهرست بلندبالایی از کارمندان و پاداش های آنها در کتاب کار  اکسل فهرست شده است.(Excel)

شما از فرمول VLOOKUP استفاده می‌کنید، (VLOOKUP)[lookup_value] مربوطه را وارد می‌کنید که برای آن یک مرجع سلولی (سلول D4) وارد می‌کنید، [table_array] (A2:B7) را تعریف می‌کنید و [col_index_num] (2) را تعریف می‌کنید. 

برای آرگومان نهایی به نام [range_lookup] ، باید از 1 (یا TRUE ) برای دستور دادن به Excel برای به دست آوردن تطابق دقیق استفاده کنید. تنظیم آن بر روی 2 (یا FALSE ) به اکسل(Excel) دستور می دهد تا به دنبال یک مطابقت تقریبی باشد که می تواند خروجی نادرستی به شما بدهد.

فرض کنید(Suppose) فرمولی برای دریافت پاداش برای چند کارمند منتخب تنظیم کرده اید، اما مقدار جستجو را اشتباه املایی کرده اید. در نهایت با یک خطای #N/A مواجه خواهید شد زیرا اکسل(Excel) نمی تواند مطابقت دقیقی برای مقدار موجود در جدول جستجو پیدا کند.

بنابراین، برای رفع این خطا چه کاری باید انجام دهید؟ 

نحوه رفع خطای #N/A

راه‌های مختلفی برای عیب‌یابی خطای #N/A وجود دارد، اما اصلاح‌ها را می‌توان در درجه اول به دو روش دسته‌بندی کرد:

  1. تصحیح ورودی ها(Correcting the inputs)
  2. به دام انداختن خطا(Trapping the error)

تصحیح ورودی ها(Correcting the inputs)

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

شما باید با استفاده از دلایل ذکر شده در این راهنما به عنوان چک لیست شروع کنید. انجام این کار به شما کمک می کند ورودی نادرستی را که باید برای رفع خطا برطرف کنید، پیدا کنید. به عنوان مثال، ممکن است یک مقدار غلط املایی، یک کاراکتر فاصله اضافی، یا مقادیری با نوع داده نادرست در جدول جستجو باشد.

به دام انداختن خطا(Trapping the error)

از طرف دیگر، اگر می‌خواهید فقط(just ) خطاها را از کاربرگ خود حذف کنید، بدون اینکه زحمت بررسی اشتباهات را به خود اختصاص دهید، می‌توانید از چندین فرمول اکسل استفاده کنید. (Excel)برخی از توابع به طور خاص برای به دام انداختن خطاها ایجاد شده اند، در حالی که برخی دیگر می توانند به شما در ایجاد یک نحو منطقی با استفاده از چندین توابع برای حذف خطاها کمک کنند.

با استفاده از یکی از توابع زیر می توانید خطای #N/A را به دام بیاندازید:

  • تابع IFERROR(IFERROR Function)
  • عملکرد IFNA(IFNA Function)
  • ترکیبی از تابع ISERROR و تابع IF(A Combination of ISERROR Function and IF Function)
  • عملکرد TRIM(TRIM Function)

1. تابع IFERROR(1. IFERROR Function)

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

استفاده از تابع IFERROR(IFERROR) به شما امکان می دهد مقدار خاصی را وارد کنید که می خواهید سلول به جای خطا نشان دهد. به عنوان مثال، اگر هنگام استفاده از VLOOKUP در سلول E2 خطای #N/A داشته باشید، می‌توانید کل فرمول را در یک تابع IFERROR(IFERROR) قرار دهید، مانند:

IFERROR(VLOOKUP(E4,B2:C7,2,1)،"کارمند پیدا نشد"(IFERROR(VLOOKUP(E4,B2:C7,2,1),“Employee not found”)

اگر تابع VLOOKUP(VLOOKUP) منجر به خطا شود، به‌طور خودکار به جای خطا، رشته متنی « کارمندان(Employees) یافت نشد» را نمایش می‌دهد.

همچنین می‌توانید با قرار دادن دو علامت نقل قول («») از یک رشته خالی استفاده کنید، اگر می‌خواهید در زمانی که فرمول خطایی را برمی‌گرداند، یک سلول خالی نمایش داده شود.

توجه داشته باشید که تابع IFERROR(IFERROR) برای همه خطاها کار می کند. بنابراین، برای مثال، اگر فرمولی که در داخل تابع IFERROR(IFERROR) قرار داده‌اید ، یک خطای # DIV را برمی‌گرداند ، IFERROR همچنان خطا را به دام می‌اندازد و مقدار را در آخرین آرگومان برمی‌گرداند.

2. عملکرد IFNA(IFNA Function)

تابع IFNA نسخه خاص تری از تابع IFERROR(IFERROR) است اما دقیقاً(exactly) به همان روش کار می کند. تنها تفاوت بین این دو تابع این است که تابع IFERROR (IFERROR)همه(all) خطاها را به دام می اندازد ، در حالی که تابع IFNA فقط خطاهای #N/A را به دام می اندازد.

به عنوان مثال، اگر خطای VLOOKUP(VLOOKUP) #N/A داشته باشید، اما برای خطای # VALUE ، فرمول زیر کار خواهد کرد :

IFNA(VLOOKUP(E4,B2:C7,2,1)،"کارمند پیدا نشد"(IFNA(VLOOKUP(E4,B2:C7,2,1),“Employee not found”)

3. ترکیبی از تابع ISERROR و تابع IF(A Combination of the ISERROR Function and the IF Function)

راه دیگر برای به دام انداختن خطا استفاده از تابع ISERROR همراه با تابع IF است. اساساً مانند تابع IFERROR(IFERROR) عمل می کند، به این ترتیب که برای تشخیص خطا به تابع ISERROR و برای ارائه خروجی بر اساس یک تست منطقی به تابع IF متکی است.(ISERROR)

این ترکیب با تمام(all) خطاها مانند تابع IFERROR(IFERROR) کار می کند، نه فقط تابع #N/A. در اینجا نمونه‌ای از نحوه شکل‌بندی نحو هنگام به دام انداختن یک خطای Excel VLOOKUP #N/A با توابع IF و ISERROR آمده(ISERROR) است:

=IF(ISERROR(VLOOKUP(E4,B2:C7,2,1)),VLOOKUP(E4,B2:C8,2,1),”Employee not found”)

4. عملکرد TRIM(TRIM Function)

قبلاً بحث کردیم که یک کاراکتر فاصله که به طور ناخواسته در مقدار جستجو درج می شود می تواند منجر به خطای #N/A شود. با این حال، اگر یک لیست طولانی از مقادیر جستجو در کاربرگ خود دارید، می توانید به جای حذف کاراکتر فاصله از هر مقدار جستجو به صورت جداگانه، از تابع TRIM استفاده کنید.(TRIM)

ابتدا، ستون دیگری ایجاد کنید تا با استفاده از تابع TRIM(TRIM) ، فضاهای اصلی و انتهایی نام‌ها را برش دهید :

سپس، از ستون جدید نام ها به عنوان مقادیر جستجو در تابع VLOOKUP(VLOOKUP) استفاده کنید.

رفع خطای #N/A در ماکروها

هیچ فرمول یا میانبری خاصی وجود ندارد که بتوانید از آن برای رفع خطاهای #N/A در یک ماکرو استفاده کنید. از آنجایی که احتمالاً هنگام ایجاد ماکرو چندین تابع را به ماکرو اضافه کرده‌اید(macro when you created it) ، باید آرگومان‌های استفاده شده برای هر تابع را بررسی کنید و بررسی کنید که آیا برای رفع خطای #N/A در ماکو درست هستند یا خیر.

#N/A خطاها رفع شد

رفع خطاهای #N/A زمانی که بفهمید علت آنها چیست کار چندان دشواری نیست. اگر خیلی نگران خروجی نیستید و نمی‌خواهید یک فرمول منجر به خطا شود، می‌توانید از توابعی مانند IFERROR و IFNA برای مقابله با خطای #N/A استفاده کنید.



About the author

من یک متخصص کامپیوتر با بیش از 10 سال تجربه هستم و در کمک به افراد در مدیریت کامپیوترهایشان در دفترشان تخصص دارم. من مقالاتی در مورد موضوعاتی مانند نحوه بهینه سازی اتصال اینترنت خود، نحوه راه اندازی رایانه برای بهترین تجربه بازی و موارد دیگر نوشته ام. اگر در مورد هر چیزی که مربوط به کار یا زندگی شخصی خود است به دنبال کمک هستید، من آن شخص برای شما هستم!



Related posts