فصل ۲: فرمول، ارجاع و اشکال‌زدایی

ترتیب محاسبه، عملگرها و نقشه‌ی خطاها

اکسل دقیقاً آن‌چه نوشته‌اید را حساب می‌کند

بسیاری از فرمول‌های «غلط» در واقع درست اجرا شده‌اند؛ فقط ترتیب اجرای عملگرها آن چیزی نبوده که نویسنده در ذهن داشته است. ترتیب تقدم در اکسل، از بالا به پایین:

اولویتعملگرمعنا
1: فاصله ,عملگرهای محدوده (بازه، اشتراک، اجتماع)
2-منفی تک‌عملوندی (مثل ‎-A1)
3%درصد
4^توان
5* /ضرب و تقسیم
6+ -جمع و تفریق
7&الحاق متن
8= < > <= >= <>مقایسه
=-2^2            → 4   (نه -4؛ منفی قبل از توان اعمال می‌شود)
=0-2^2           → -4
=A1+B1/2         → A1 + نصف B1   (نه میانگین)
=(A1+B1)/2       → میانگین
="جمع: "&A1+B1  → اول A1+B1 محاسبه، سپس الحاق
=A1>B1=TRUE      → مقایسه‌ها از چپ به راست
=B2*(1-10%)      → 10% همان 0.1 است

نقشه‌ی خطاها

خطامعنای واقعیعلت رایج
#DIV/0!تقسیم بر صفر یا خالیمیانگین گروهی که هیچ رکوردی ندارد
#N/Aپیدا نشد / موجود نیستجست‌وجوی کدی که در جدول نیست، یا فاصله‌ی اضافه در متن
#NAME?نام ناشناختهغلط تایپی در نام تابع، متن بدون گیومه، یا تابع جدید در نسخه‌ی قدیمی
#VALUE!نوع داده‌ی نامناسبجمع یک عدد با متن، یا عددی که متن است
#REF!ارجاع از بین رفتهحذف ستون یا سطری که فرمول به آن اشاره می‌کرد
#NUM!عدد نامعتبرجذر منفی، IRR که همگرا نمی‌شود
#NULL!اشتراک خالی دو محدودهفاصله به‌جای کاما بین دو محدوده
#SPILL!آرایه‌ی پویا جا نداردسلول پر یا ادغام‌شده در مسیر خروجی (فصل ۴)
#CALC!خطای محاسبه‌ی آرایهFILTER که هیچ نتیجه‌ای ندارد و آرگومان سوم ندارد
#####خطا نیستستون باریک است، یا تاریخ منفی

دقت اعشاری

اکسل اعداد را به‌صورت ممیز شناور دودویی نگه می‌دارد و بعضی کسرهای ده‌دهی را دقیق نمی‌تواند ذخیره کند. نتیجه این‌که =1*(0.5-0.4-0.1) به‌جای صفر عددی بسیار کوچک مثل ‎-2.8E-17 می‌دهد و مقایسه‌ی =A1=0 ممکن است FALSE شود. در محاسبات مالی، نتیجه‌ای را که قرار است مقایسه یا جست‌وجو شود با ROUND گرد کنید.

نکته‌هایی که کمتر کسی می‌داند

  • برای یافتن همه‌ی خطاهای یک شیت: F5 ← Special ← Formulas ← فقط تیک Errors. سپس با Tab بین آن‌ها حرکت کنید.
  • تابع ERROR.TYPE به هر خطا یک عدد می‌دهد (#N/A برابر 7)؛ با آن می‌توانید فقط یک نوع خطا را مدیریت کنید و بقیه را نمایان نگه دارید.
  • گزینه‌ی File ← Options ← Advanced ← Set precision as displayed مقادیر را برای همیشه به اندازه‌ی نمایش گرد می‌کند و قابل برگشت نیست؛ هرگز روی فایل اصلی فعالش نکنید.
  • عملگر فاصله «اشتراک» دو محدوده است: =B2:D10 C:C سلول‌های مشترک را برمی‌گرداند. به همین دلیل یک فاصله‌ی تصادفی در فرمول ممکن است به #NULL! برسد.
  • مقایسه‌ی متن در اکسل به بزرگی و کوچکی حروف حساس نیست: ="ali"="ALI" برابر TRUE است. برای مقایسه‌ی دقیق از EXACT استفاده کنید.

برای ذخیره‌ی پیشرفت و شرکت در آزمون، وارد شوید — رایگان است.