3.7/5 - (3 امتیاز)
گاهی اوقات لازم است که شما از خود تابع IF به عنوان یکی از آرگومان های تابع IF استفاده کنید. البته تابع IFS گوگل شیتس جایگزین IF تو در تو است. که با هر دو این موارد آشنا خواهیم شد.

در این مطلب خواهیم آموخت:

تابع IF تو در تو

فرض کنید برای مشتریان خود تخفیف های متفاوتی را در نظر گرفته اید. به این ترتیب که اگر کل خرید آنها از 200 واحد بیشتر باشد، 10% تخفیف دریافت میکنند. اگر کل خرید آنها بین 100 تا 199 باشد، 5%  تخفیف و اگر کل خرید کمتر از 100 باشد هیچ تخفیفی دریافت نمیکنند.

برای حل این مسئله از IF تو در تو مطابق فرمول زیر استفاده کرده ایم:

=IF(E2>200,E2*0.1,IF(E2>100,E2*0.05,0))

مثالی از تابع IF تو در تو گوگل شیتس

نکته اینجاست که برای آرگومان دوم تابع IF از یک تابع IF استفاده شده است. در این شرایط درخت تصمیم به شکل زیر خواهد بود:

نمودار درختی تابع If تو در تو

بیاید مثال را کمی پیچیده تر و هیجان انگیز تر کنیم. فرض کنید که تخفیف هایی که در نظر گرفتید فقط به منطقه خاص مثلا East تعلق بگیرد.

برای اینکه فرمول به درستی کار کند شما باید از تابع AND نیز استفاده کنید. در نتیجه فرمول به شکل زیر خواهد شد:

=IF(AND(B2="East",E2>200),E2*0.1,IF(AND(B2="East",E2>100),E2*0.05,0))

ترکیب تابع IF تو در تو و تابع AND

همانطور که در تصویر بالا میبینید، تعداد تخفیف ها کاهش یافت اما مقدار آنها تغییری نکرد.

تابع IFS گوگل شیتس

اما راه آسان تری نیز برای نوشتن فرمول های بالا وجود دارد. این راه استفاده از تابع IFS گوگل شیتس است:

=IFS(condition1, value1, [condition2, value2, …])

condition1: (اجباری) شرطی است که میخواهید تست کنید.

value1: (اجباری) مقداری که در صورت درست بودن شرط میخواهید برگردانده شود.

condition2: دومین شرطی که میخواهید بررسی شود.

value2: مقداری که در صورت درست بودن شرط 2 میخواهید برگردانده شود.

…: به همین ترتیب اگر شرط دیگری بود تعریف کنید.

فرمول بالا با استفاده از تابع IFS به شکل زیر خواهد بود:

 

=IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05)

 

تابع IFS و تابع AND

نکته: در اینجا اگر هیچ شرطی درست نباشد فرمول خطای #N/A را برمیگرداند.

برای اینکه این اتفاق نیفتد از تابع IFERROR استفاده کنید:

=IFERROR(IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05),0)

مثال تابع IFERROR

مرسی که امروز هم همراه ما بودی و این مطلب رو خوندی. امیدواریم برات کاربردی بوده باشه.

اگر سؤالی یا نظری داشتی حتما زیر این پست برامون کامنت بذار.

باز هم به ما سر بزن. مطالب زیر مطالب پیشنهادی ما به شماس: فرمول نویسی در گوگل شیتس (قسمت اول)ایجاد و ویرایش فرمول ها(قسمت دوم فرمول نویسی گوگل شیتس)تابع If گوگل شیتس – مثال های فرمولی و کاربردی

مشترک شدن
Notify of
guest

4 نظرات
نظردهی درون متنی
مشاهده همه نظرات
مسعود سبزعلی پور

=IF(G2>=3000؛((3000*672500)+((G2-3000)*67250))؛
IF(G2<3000>2500؛((G2*672500)+((3000-G2)*336250))؛
IF(G2<=2500؛1849375000؛”T”)))
سلام وقت بخیر میشه راهنکایی کنید که چرا فرمول بالا خطا میزنه

امیر دایی

اول از همه جداکننده آرگومان ها رو به کاما تغییر بدید
تغییر جداکننده آرگومان در اکسل

بعدش دقت کنید که وقتی فرمول نویسی می کنید، پرانتزها را به موقع باز و بسته کنید.

عادل

سلام و عرض ادب. ممنون از آموزش خوبتون.
لطفا میشه راهنمایی کنید که چطور در یک کارگاه تولیدی که دارم کار می کنم ، فرمولی بنویسم که وقتی یک محصول تولید شد، به طور خوکار خودش از مواد انبار کسر کنه. و نهایتا ما یه موجودی می گیریم یک ماهه از انبار و متوجه میشیم در این یک ماه که مثلا ۳۰ تا محصول ساختیم.
هر محصول هم شامل ۱۸ قطعه است و من انتظار دارم هر کدام از دسته قطعات مربوط به محصول اتومات از انبار کم بشوند
با تشکر از لطفا

امیر دایی

سلام
این ربطی به فرمول نویسی نداره.
اول شما باید یک جدول bom از محصولات و قطعات مورد نیاز ایجاد کنید. بعد یک جدول از مواد اولیه و ورودی به انبار داشته باشید. یک جدول از محصولات تولیدی داشته باشید. حالا می تونید از ضرب تعداد محصولات تولیدی با قطعات تولیدی میزان مصرف رو به دست بیارید و با تفریق از موجودی اولیه انبار و مقدارهای ورودی میزان باقی مانده رو به دست بیارید. تمام این کارها رو هم با تابع sumifs می تونید انجام بدید.