فهرست مطالب
این آموزش نحوه استفاده از چند IF در اکسل را توضیح میدهد و چند نمونه فرمول If تودرتو برای اکثر وظایف رایج ارائه میدهد.
اگر کسی از شما بپرسد که بیشتر از چه تابع اکسل استفاده می کنید، پاسخ شما چیست؟ در بیشتر موارد، این تابع Excel IF است. یک فرمول If معمولی که یک شرط را آزمایش می کند بسیار ساده و آسان برای نوشتن است. اما اگر دادههای شما نیاز به تستهای منطقی دقیقتری با شرایط چندگانه داشته باشند، چه؟ در این حالت، می توانید چندین تابع IF را در یک فرمول قرار دهید و این دستورات If متعدد Excel Nested IF نامیده می شوند. بزرگترین مزیت دستور If تودرتو این است که به شما امکان می دهد بیش از یک شرط را بررسی کنید و بسته به نتایج آن بررسی ها مقادیر متفاوتی را برگردانید، همه در یک فرمول.
Microsoft Excel محدودیت هایی برای <دارد. 4>سطوح IF های تودرتو . در اکسل 2003 و پایین تر، حداکثر 7 سطح مجاز بود. در اکسل 2007 و بالاتر، میتوانید تا 64 تابع IF را در یک فرمول قرار دهید.
در ادامه این آموزش، چند نمونه اکسل تو در تو را به همراه توضیح دقیق نحو و منطق آنها خواهید دید. .
مثال 1. فرمول کلاسیک تو در تو IF
در اینجا یک مثال معمولی از Excel If با شرایط چندگانه است. فرض کنید شما لیستی از دانش آموزان در ستون A و نمرات امتحانات آنها در ستون B دارید و می خواهید نمرات را با موارد زیر طبقه بندی کنید.شرایط:
- عالی: بیش از 249
- خوب: بین 249 تا 200، شامل
- رضایت بخش: بین 199 تا 150، شامل
- ضعیف : زیر 150
و اکنون، یک تابع IF تودرتو بر اساس معیارهای بالا بنویسیم. این یک تمرین خوب در نظر گرفته می شود که با مهمترین شرط شروع کنید و عملکردهای خود را تا حد امکان ساده نگه دارید. فرمول IF تو در تو در اکسل ما به شرح زیر است:
=IF(B2>249, "Excellent", IF(B2>=200, "Good", IF(B2>150, "Satisfactory", "Poor")))
و دقیقاً همانطور که باید کار می کند:
آشنایی با منطق IF تو در تو در اکسل
شنیده ام که برخی می گویند اکسل چندگانه If آنها را دیوانه می کند :) سعی کنید از زاویه دیگری به آن نگاه کنید:
در واقع فرمول چیست؟ به اکسل میگوید که انجام دهد این است که logical_test اولین تابع IF را ارزیابی کند و در صورت برآورده شدن شرط، مقدار ارائه شده در آرگومان value_if_true را برگرداند. اگر شرط تابع 1st If برآورده نشد، دستور If 2 و غیره را آزمایش کنید.
IF( اگرB2>=249 را بررسی کنید، اگر درست است - بازگشت"عالی"، یاIF( بررسی کنید B2>=200، اگر درست است - برگردان "خوب"، یا غیره
IF( بررسی کنید B2>150، اگر درست است - بازگشت "رضایت بخش"، اگر نادرست است -
بازگرداندن "ضعیف")))
مثال 2. چندگانه اگر با محاسبات حسابی
این هم یک کار معمولی دیگر: قیمت واحد بسته به مقدار مشخص شده متفاوت است، و هدف شما نوشتن فرمولی است کهقیمت کل را برای هر مقدار اقلام ورودی در یک سلول خاص محاسبه می کند. به عبارت دیگر، فرمول شما باید شرایط متعددی را بررسی کند و محاسبات متفاوتی را بسته به محدوده مقدار مشخص شده انجام دهد:
Unit Quantity | Price per unit |
1 تا 10 | 20$ |
11 تا 19 | 18$ |
20 تا 49 | 16$ |
50 تا 100 | 13$ |
بیش از 101 | $12 |
این کار همچنین با استفاده از چندین تابع IF قابل انجام است. منطق مانند مثال بالا است، تنها تفاوت این است که شما مقدار مشخص شده را در مقدار بازگردانده شده توسط IF های تو در تو ضرب می کنید (یعنی قیمت مربوط به هر واحد).
با فرض اینکه کاربر مقدار را در سلول B8، فرمول به صورت زیر است:
=B8*IF(B8>=101, 12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, "")))))
و نتیجه چیزی شبیه به این خواهد بود:
همانطور که متوجه شدید ، این مثال فقط رویکرد کلی را نشان می دهد، و شما به راحتی می توانید این تابع If تودرتو را بسته به وظیفه خاص خود سفارشی کنید.
به عنوان مثال، به جای "کدگذاری سخت" قیمت ها در فرمول، می توانید به سلول های حاوی آن مقادیر (سلول های B2 تا B6). این به کاربران شما امکان میدهد تا دادههای منبع را بدون نیاز به بهروزرسانی فرمول ویرایش کنند:
=B8*IF(B8>=101,B6, IF(B8>=50, B5, IF(B8>=20, B4, IF( B8>=11, B3, IF(B8>=1, B2, "")))))
یا ممکن است بخواهید یک تابع IF اضافی اضافه کنید. (ها) که قسمت بالایی را ثابت می کند،حد پایین یا هر دو محدوده مقدار. هنگامی که مقدار خارج از محدوده باشد، فرمول پیام "خارج از محدوده" را نمایش می دهد. به عنوان مثال:
=IF(OR(B8>200,B8=101,12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, ""))))))
فرمول های تودرتوی IF که در بالا توضیح داده شد در همه نسخه های اکسل کار می کنند. در اکسل 365 و اکسل 2021 نیز میتوانید از تابع IFS برای همین منظور استفاده کنید.
کاربران پیشرفته اکسل که با فرمولهای آرایه آشنا هستند، میتوانند از این فرمول استفاده کنند که اساساً همان کار تابع IF تودرتو را انجام میدهد. در بالا مورد بحث قرار گرفت. اگرچه درک فرمول آرایه بسیار دشوارتر است، اجازه دهید نوشتن را کنار بگذاریم، اما یک مزیت غیرقابل انکار دارد - شما به جای ارجاع به هر شرط جداگانه، محدوده سلول های حاوی شرایط خود را مشخص می کنید. این فرمول را انعطافپذیرتر میکند و اگر کاربران شما هر یک از شرایط موجود را تغییر دهند یا شرایط جدیدی را اضافه کنند، فقط باید یک مرجع محدوده واحد را در فرمول بهروزرسانی کنید.
Excel nested IF - نکات و ترفندها
همانطور که مشاهده کردید، هیچ علم موشکی در استفاده از چندین IF در اکسل وجود ندارد. نکات زیر به شما کمک میکند تا فرمولهای IF تودرتو را بهبود ببخشید و از اشتباهات رایج جلوگیری کنید.
محدودیتهای تودرتوی IF
در Excel 2007 - Excel 365، میتوانید تا 64 تابع IF را تودرتو کنید. در نسخههای قدیمیتر Excel 2003 و پایینتر، تا 7 تابع IF تودرتو میتوان استفاده کرد. با این حال، این واقعیت که شما می توانید تعداد زیادی IF را در یک فرمول قرار دهید، به این معنی نیست که باید این کار را انجام دهید.لطفاً به خاطر داشته باشید که هر سطح اضافی درک و عیب یابی فرمول شما را دشوارتر می کند. اگر فرمول شما دارای سطوح تو در تو بیش از حد است، ممکن است بخواهید آن را با استفاده از یکی از این گزینه ها بهینه کنید.
ترتیب توابع IF تودرتو مهم است
عملکرد Excel تو در تو، تست های منطقی را ارزیابی می کند. به ترتیبی که در فرمول ظاهر می شوند، و به محض اینکه یکی از شرایط به TRUE ارزیابی شود، شرایط بعدی آزمایش نمی شوند. به عبارت دیگر، فرمول پس از اولین نتیجه TRUE متوقف می شود.
بیایید ببینیم در عمل چگونه کار می کند. با B2 برابر با 274، فرمول IF تودرتو در زیر اولین آزمون منطقی (B2>249) را ارزیابی میکند و "عالی" را برمیگرداند زیرا این تست منطقی درست است:
=IF(B2>249, "Excellent", IF(B2>=200, "Good", IF(B2>150, "Satisfactory", "Poor")))
حالا، اجازه دهید ترتیب توابع IF را معکوس کنید:
=IF(B2>150, "Satisfactory", IF(B2>200, "Good", IF(B2>249, "Excellent", "Poor")))
فرمول شرط اول را آزمایش می کند و چون 274 بزرگتر از 150 است، نتیجه این آزمون منطقی نیز درست است. در نتیجه، فرمول بدون آزمایش شرایط دیگر "رضایت بخش" را برمی گرداند.
می بینید که تغییر ترتیب توابع IF نتیجه را تغییر می دهد:
فرمول را ارزیابی کنید logic
برای مشاهده گام به گام جریان منطقی فرمول IF تو در تو، از ویژگی ارزیابی فرمول واقع در برگه فرمول ، در حسابرسی فرمول استفاده کنید. گروه عبارت زیر خط کشیده شده بخشی است که در حال حاضر در حال ارزیابی است و روی Evaluate کلیک می کنیمدکمه تمام مراحل فرآیند ارزیابی را به شما نشان می دهد.
به عنوان مثال، ارزیابی اولین آزمون منطقی فرمول IF تودرتو که در تصویر زیر نشان داده شده است به شرح زیر است: B2>249; 274>249; درست است، واقعی؛ عالی است.
توازن پرانتز توابع IF تو در تو
یکی از چالش های اصلی IF های تودرتو در اکسل تطبیق جفت پرانتز است. اگر پرانتزها مطابقت نداشته باشند، فرمول شما کار نخواهد کرد. خوشبختانه، مایکروسافت اکسل چند ویژگی را ارائه می دهد که می تواند به شما کمک کند تا هنگام ویرایش یک فرمول، پرانتزها را متعادل کنید:
- اگر بیش از یک مجموعه پرانتز دارید، جفت پرانتز در رنگ های مختلف سایه دار می شود. که پرانتز آغازین با پرانتز پایانی مطابقت دارد.
- وقتی پرانتز را می بندید، اکسل به طور خلاصه جفت منطبق را برجسته می کند. هنگامی که با استفاده از کلیدهای جهت دار در فرمول حرکت می کنید، همان جلوه پررنگ یا "سوسوزن" ایجاد می شود.
برای اطلاعات بیشتر، لطفاً به پرانتز مطابقت مراجعه کنید. جفتها در فرمولهای اکسل.
با متن و اعداد متفاوت رفتار کنید
هنگام ساختن تستهای منطقی از فرمولهای IF تودرتو، به یاد داشته باشید که متن و اعداد باید متفاوت رفتار شوند - همیشه مقادیر متن را در دو گیومه قرار دهید. اما هرگز نقل قول را در اطراف اعداد قرار ندهید:
درست: =IF(B2>249، "عالی"،...)
اشتباه: =IF(B2> "249"، "عالی"،...)
آزمون منطقی ازفرمول دوم FALSE را برمی گرداند حتی اگر مقدار B2 از 249 بیشتر باشد. چرا؟ زیرا 249 یک عدد است و "249" یک رشته عددی است که دو چیز متفاوت هستند.
برای سهولت خواندن IF های تودرتو، فاصله ها یا خطوط شکاف اضافه کنید
هنگام ساختن یک فرمول با چندین فرمول سطوح IF تو در تو، میتوانید منطق فرمول را با جدا کردن توابع IF مختلف با فاصلهها یا شکستگیهای خط، شفافتر کنید. اکسل به فاصله اضافی در یک فرمول اهمیتی نمی دهد، بنابراین ممکن است نگران خراب کردن آن نباشید.
برای انتقال بخش خاصی از فرمول به خط بعدی، کافی است روی جایی که می خواهید یک شکست خط وارد کنید کلیک کنید. و Alt + Enter را فشار دهید. سپس، نوار فرمول را تا حد نیاز گسترش دهید و خواهید دید که درک فرمول IF تو در تو بسیار آسانتر شده است.
جایگزینهای IF تودرتو در اکسل
برای دور زدن محدودیت هفت تابع IF تو در تو در اکسل 2003 و نسخههای قدیمیتر و فشردهتر و سریعتر کردن فرمولهای خود، از گزینههای زیر برای توابع IF تو در تو در Excel استفاده کنید.
- به شرایط چندگانه را آزمایش کنید و مقادیر مختلف را بر اساس نتایج آن تست ها برگردانید، می توانید از تابع CHOOSE به جای IF های تودرتو استفاده کنید.
- یک جدول مرجع بسازید و از VLOOKUP با تطابق تقریبی همانطور که در این مثال نشان داده شده است استفاده کنید: VLOOKUP به جای IF تو در تو در اکسل.
- از IF با توابع منطقی OR / AND، همانطور که در اینها نشان داده شده است، استفاده کنید.مثالها.
- از یک فرمول آرایه مانند نشان داده شده در این مثال استفاده کنید.
- با استفاده از تابع CONCATENATE یا عملگر الحاق (&) چندین دستور IF را ترکیب کنید. یک مثال فرمول را میتوانید در اینجا پیدا کنید.
- برای کاربران باتجربه اکسل، بهترین جایگزین برای استفاده از توابع IF تو در تو، ایجاد یک تابع کاربرگ سفارشی با استفاده از VBA است.
به این ترتیب است. شما از فرمول If در اکسل با چند شرط استفاده می کنید. از شما سپاسگزارم که خواندید و امیدوارم هفته آینده شما را در وبلاگ خود ببینیم.
کتاب کار برای دانلود تمرین کنید
عبارات Nested If Excel (فایل xlsx.)