تابع IF در اکسل
این تابع یکی از پرکاربردترین توابع اکسل می باشد.
در این پست ساختار و کاربرد تابع IF در اکسل را با ذکر چند مثال به همه دوستان عزیز تقدیم می کنم.
شرح تابع:
اگر شرطی که شما تعیین کرده اید اتفاق بیفتد این تابع مقدار (TRUE) یا (صحیح) را برمیگرداند و اگر شرط تعریف شده تحقق نیابد آنگاه خروجی این تابع مقدار (FALSE) یا (غلط) می باشد.
به عنوان مثال اگر شما در سلول B1 فرمول را به صورت
=IF(A1>50,”عدد مورد نظراز 50 بزرگتر می باشد”,”عدد مورد نظرکمتر یا مساوی 50 می باشد.”)
وارد کرده و در سلول A1 عدد دلخواهی را وارد نمایید،
آنگاه آن عدد با عدد 50 مقایسه شده و عبارت متناسب در سلولی که فرمول را در آن نوشته اید (B1) به شما نشان داده خواهد شد.
ساختار کلی تابع IF به شکل زیر می باشد.
IF(logical_test, [value_if_true], [value_if_false])
عبارت Logical test که باید حتماً در تابع ذکر گردد می تواند یک مقدار یا یک تابع باشد
مانند A1>50 . اگر مقدار A1 از 50 بزرگتر باشد آنگاه تابع عبارت (True) یا هر عبارتی که شما تعیین نمایید را نمایش میدهد
و در غیر صورت تابع عبارت (False) یا هر عبارتی که شما تعیین نمایید را نمایش خواهد داد.
عبارت Value if true پیامی است که اگر نتیجه تابع درست باشد نمایش داده می شود.
این مقدار می تواند رشته متنی، عدد و یا هر عبارت دلخواهی باشد.
عبارت Value if false پیامی است که اگر نتیجه تابع نادرست باشد نمایش داده می شود.
این مقدار می تواند رشته متنی، عدد و یا هر عبارت دلخواهی باشد.
تذکر1: اگر میخواهید پیام تابع به صورت رشته متنی باشد فراموش نکنید که آن را حتماً داخل علامت ” “ قرار دهید.
جدا کننده های تابع
تذکر 2: جدا کننده عبارت های تابع IF می تواند بسته به نوع تنظیمات ویندوز شما علائم ( , ) و یا( ; ) باشد
می توانید برای تحقق بیش از دو شرط از تابع IF تو در تو (Nested) استفاده نمایید.
در اکسل 2010 می توانید تا 64 تابع تو در تو را استفاده نمایید.
در مثال شماره 3 یک نوع تابع تو در تو ذکر شده است.
البته در صورتی که تعداد شرط ها خیلی زیاد شوند، بهتراست از توابع دیگری مانند Lookup- Vlookup- Hlookup , Choose استفاده نمایید.
مثال 1
فرض کنید در دو سلول A2 و B2 دو عدد دلخواه را وارد کرده باشیم. در سلول A4 فرمول را به صورت:
=IF(A2<=100,”عدد وارد شده کمتر یا مساوی 100 می باشد”,”عدد وارد شده بزرگتر از 100 می باشد”)
وارد می کنیم. حال اگر عدد وارد شده درسلول A2 کمتر از 100 باشد در سلول A4 عبارت “عدد وارد شده کمتر یا مساوی 100 می باشد” نمایش داده می شود
و اگر این عدد بزرگتر از 100 باشد آنگاه عبارت “عدد وارد شده بزرگتر از 100 می باشد” نمایش داده خواهد شد.
در سلول A5 نیز فرمول را به صورت:
=IF(A2=100,A2+B2,””)
نوشته شده است.
اگر عدد وارد شده در سلول A2 برابر 100 باشد آنگاه این عدد با عدد واقع در سلول B2 با هم جمع شده و نتیجه در سلول A5 نمایش داده خواهد شد
و در غیر این صورت نتیجه فرمول سلول A5 یک رشته خالی ( ” ” ) خواهد بود.
به عبارت دیگر در این سلول هیچ مقدار یا پیامی ظاهر نخواهد شد.
مثال 2
فرض کنیم در سلول های A2 و A3 مقدار هزینه واقعی انجام یک کار را نوشته و در سلول های مقابل آنها یعنی B2 و B3 مقدار هزینه پیش بینی شده (بودجه) را نوشته ایم.
میخواهیم ببینیم آیا هزینه انجام کار از مقدار بودجه پیش بینی شده کمتر یا بیشتر شده است.
برای این منظور در سلول A6 فرمول را به صورت زیر نوشته ایم.
=IF(A2>B2,”بیش از بودجه”,”OK”)
اگر مقدار هزینه بیش از بودجه باشد آنگاه عبارت “بیش از بودجه” در سلول A6 نمایش داده خواهد شد و در غیر این صورت عبارت “OK” نمایش داده می شود.
همانطور که مشاهده می شود در سطر دوم هزینه بیش از بودجه بوده و عبارت “بیش از بودجه” ظاهر شده
اما برای سطر سوم چون هزینه کمتر از بودجه می باشد عبارت “OK” نوشته شده است
مثال 3
فرض کنیم در سلول های A3, A2,A1 نمرات درس سه نفر از دانشجویان کلاسی را نوشته ایم.
می خواهیم به نمرات بالاتر از 89 رتبه A و به نمرات بین 79 تا 89 رتبه B، به نمرات بین 69 تا 79 رتبه C، به نمرات بین 59 تا 69 رتبه D و به نمرات کمتر از 59 رتبه F را اختصاص دهیم.
برای این منظور در سلول A6 فرمول را به صورت
=IF(A2>89,”A”,IF(A2>79,”B”, IF(A2>69,”C”,IF(A2>59,”D”,”F”))))
می نویسیم. چون عدد واقع در سلول A2 45 می باشد، پس نتیجه این فرمول رتبه F خواهد بود.
و به همین ترتیب فرمول سلول های A7 و A8 نیز به صورت زیر نوشته می شوند و نتیجه آنها اختصاص رتبه های A و C می باشند.
IF(A3>89,”A”,IF(A3>79,”B”, IF(A3>69,”C”,IF(A3>59,”D”,”F”))))
IF(A4>89,”A”,IF(A4>79,”B”, IF(A4>69,”C”,IF(A4>59,”D”,”F”))))
توجه داشته باشید در فرمول IF های تو در تو به جای شرط قسمت دوم در تابع IF یک تابع IF جدید نوشته می شود.
یعنی به جای value_if_false یک تابع جدید IF را قرار می دهیم.
توجه داشته باشید که در هر تابع اکسل باید کلیه پرانتزهای باز شده و پرانتزهای بسته شده با هم برابر باشند.
برای مطالعه توابع جمع شرطی به این مقالات مراجعه فرمایید
دمت گرم
سلام .خسته نباشید واقعا کمک کردی.فقط یه سوال میخوام جواب هر سلول یا هر دو تا سلول اگه صفر شد نوشته ای تو یک سلول سوم نوشته بشه.هر کار میکنم نمیشه یا هر دوتا سلول صفر مشه خطا میده.جواب تو هر دوتا سلول یا تو هر کدوم صفر شد توسلول سوم کلمه ای بنویسه میشه.لطفا کمک کنید ممنون میشم
سلام ، چگونه می توان از دستور if
برای تغییر رنگ زمینه سلول استفاده کرد؟ به عنوان مثال : سلول با محتوا بزرگتر از 20 رنگه زمینه قرمز بشود؟ با مبحث
conditional formating
آشنایی دارم. باتشکر
سلام لطفاپاسخ خانم ليلا را براي من هم ارسال فرماييد من هم همين سوال رادارم
سلام. پاسخ به ایمیل شما ارسال شد
اگه میشه این سوال و جوابش را برای منم ایمیل کنید ممنون
سلام میخواستم بدونم چجوری میشه اعداد خاصی رو تو اکسل جمع کرد که تکراری نباشند و حاصل جمع هر سطر وسطون عدد خاصی باشه.
مثلا:جدولی5*5بدون ارقام تکراری که اعداد درون آن مضارب10باشند و جمع هر سطر و ستون 1000باشد
عالی بود
یک هفتس گیر فرمو نویسی تابع if
اگر در 270 کیلومتر 24 لیتر بنزین مصرف شود پس در 100 کیلو متر چند لیتر مصرف میگردد لطف نموده این فورمل را در اکسل برایم توزیع بدهید
سلام میشه خواهش کنم کمک کنید!
من هرچی فرمول می نویسم نمیدونم کجاش مشکل داره
اگر سلول اف 5 بزرگ تر مساوی 15 باشد ، 15
و اگر سلول اف 5 کوچک تر از 15 باشد همان عدد باشد
=IF(F5>=15;15;F5)سلام فكر نكنم كار سختي باشه
با عرض سلام و خسته نباشید
من میخوام یه شرط بنویسم که اگه یه تاریخی بهش دادم خودش هفت روز بعد از آن تاریخ و 28 روز بعد از آن تاریخ و 90 روز بعد از آن تاریخ رو بهم بده هر کاری میکنم نمیشه کسی هست که منو راهنمایی بکنه ممنونتون میشم. به فرض مثال
تاریخ اولیه
تاریخ هفت روز بعد
تاریخ 28روز بعد
تاریخ 90روز بعد
1393/07/12
با تشکر فراوان
فایل پیوستی
سلام.
برای انجام این کار شرط گزاری نیاز نداره. شما فرمت اون سلولی که تاریخ اولیه بهش میدید رو به DATA تغییر بدید بعد در سلول بعد همون سلول رو +7 کنید و در سلول بعد فرمول سلول مربوط به تاریخ اولیه +28 و . . . رو وارد کنید ، خود اکسل حساب می کنه
گريد
علي…….. 55
امير…….. 68
حسن ……. 75
حسين ……. 85
احمد……..95
مي باشد حال گريد بصورت زيراست
گريد 0 تا 60….. 0
گريد 60تا 70 …. 1
گريد 70 تا 80 …. 2
گريد 80 تا 90 …. 3
گريد 90 تا 100 . . . 4
لطفا بفرماييد به چه صورت مي توانم بصورت شرطي فرموليزه نمايم تا وقتي گريد مثلا نمره علي و ميزنم 55 گريدش و بمن بده متشكرم
با فرض اینکه عدد گرید در سلول H1 قرار داشته باشد میتوانید از تابع IF به شکل زیر استفاده کنید
((((IF(H1<60,0,IF(H1<70,1,IF(H1<80,2,IF(H1<90,3,4=
اقا دمت گرم دنبال همین مثاال سه میگشتم. مرسی یه دنیا. فدات
ممنون بابت آموزش خوبتون، بسیار مفید واقع شد مخصوصا برای من که جدیداً کارم با اکسل زیاد شده.
ساکشن کیان پارس
https://parsvacuumpumps.com
توضیح خوبی دادید ممنونم
سلام سوال خیلی سختیه
شیفت بندی 11 پرسنل فروشگاه در یک ماه طی 3 شیفت متغیر که در 1 شیفت 6 نفر و 2 شیفت دیگه هر کدام 2 نفر است
چجوری شیفت 1 ماه رو بنویسم؟
اگه تونستین
با سلام و احترام، سوالی داشتم از خدمتتون
برای محاسبه معدل فرمولی میخواستم به این شکل :
فرض بفرمایی 5 تا درس داریم که هر کدام ضریب متفاوتی دارند که طبیعتا جمع ضرایب 100 است. در این صورت برای محاسبه معدل دانش آموزان، نمرات دورس ضرب در ضرایب میشوند و پس از جمع تقسیم بر 100 میشوند.
حال مشکلی هست و اینکه امکان دارد برای دانش آموزانی نمرات بعضی از دورس در نظر گرفته نشده باشد، مثلا از 5 درس موجود فقط نمره را در 3 درس برای او درنظر گرفتیم و میخواهیم ضرایب دو درس حذف شده به میزان تناسب بین ان سه درس باقیمانده تقسیم شود و معدل حساب شود.
با تشکر از لطف شما
سلام
خدا قوت
لطفا بفرمایید اگه بخوایم در یک سلول عدد ورود و خروج جنسی اگر عدد منفی بود رنگ آن بصورت خودکار قرمز بشه چه باید کرد
به ترتیب باید این کارها را انجام بدی
1- محدوده مورد نظر را انتخاب کن
2- از سربرگ Home ابزار conditional formatting را انتخاب کن
3- از پنجره ظاهر شده گزینه عبارت highlight cells rules را برگزینید
4- بر روی عبارت less than کلید کنید
5- در کادر ظاهر شده مقدار 0 را تایپ کنید
6- روی دکمه Ok کلیک کنید
سلام
اگر بخواهیم فرمولی بنویسیم که نمرات تبالای 18 را A نمرات بین 16 تا 18 را B جملات بین 14 تا 16 را C و جملات زیر 14 را D بدهد باید چه فرمولی بنویسیم؟
با فرض اینکه اولین نمره را در سلول A1 وارد کرده باشیم از این فرمول استفاده کن
(((“IF(A1>18,”A”,IF(A1>=17,”B”,IF(A1>=16,”C”,”D
سلام. میشه اینو کمکم کنید؟
در خانه زرد رنگ فرمول تعریف شود با توجه به امتیازات ستون نارنجی
امتیاز بین 1 تا 5 = خیلی ضعیف
امتیاز بین 6 تا 10 ضعیف
امتیاز بین 11 تا 15 متوسط
امتیاز بین 16 تا 17 خوب
امتیاز بین 18 تا 20 عالی
وارد شود از این فرمول استفاده نمایید A1 با فرض اینکه امتیازات در سلول
=IF(A1<6,"خیلی ضعیف",IF(A1<11,"ضعیف",IF(A1<16,"متوسط",IF(A1<18,"خوب","عالی"))))
سلام
چجور میشه اینکار را انجام داد اگر یک سلول به رنگ قرمز شد کل همون ردیف قرمز شود
اگر سلول (براساس شرطی ک قبلا بهش داده بودیم)مشکی شد بقیه سلول های همون ردیف هم مشکی بشه.
با تشکر
سلام
فایل تصویری روش انجام کار به ایمیل شما ارسال گردید
خیلی ممنون
سپاس
سلام
چجور میشه اینکار را انجام داد اگر یک سلول به رنگ قرمز شد کل همون ردیف قرمز شود
اگر سلول (براساس شرطی ک قبلا بهش داده بودیم)مشکی شد بقیه سلول های همون ردیف هم مشکی بشه.
با تشکر
قالب سلول چگونه تبدیل به سال و ماه میلادی میشه مثلا 201804 اگر داده ورودی غیر از این قالب بود ارور بده
خیلی ممنون از آموزش های بسیار مفید شما
موفق باشید
سلام دوست عزیز
چطوری میشه توی اکسل ماکرو نوشت؟
سلام
برای نوشتن ماکرو ابتدا باید با روش کدنویسی اشنا بشی. برای این کار می توانی از بخش دانلودهای رایگان سایت کتاب آموزشی VBA را دانلود کنی.
پس از باز کردن اکسل کلیدهای Alt+F11 را فشار بده تا به محیط کدنویسی وارد بشی . پس از ورود به این بخش بر روی insert در نوار منو کلیک کن و سپس Module را انخاب کن. در این محیط می توانی کدهای مورد نظر را بنویسی. پس از نوشتن کدها باید فایل را با فرمت (name.xlsm (macro enable ذخیره کنی
خیلی ممنون
چگونه با استفاده از تغییر رنگ یک سلول، کل ردیف مربوط به آن رنگی بشه؟
با سلام .یه کارنامه داریم در یک ستون نام درس در ستون دیگر نمره.چجوری تنظیم کنیم که اگر نمره زیر 10 بود، رنگ درس قرمز بشه؟سپاس
سلام. پاسخ به ایمیل شما ارسال شد
با سلام.
آموزش ویدیویی به ایمیل شما ارسال شد
سلام
در مورد شرطifدر اکسل سوال داشتم
سوالم
من میخوام اگر مجموع اعداد در سلول cf51کوچکتر از صفر باشد در سلول dg13نوشته شود و اگر بزرگتر از صفرباشددر سلول de13نوشته شود
لطفا فرمولش برام بنویسید
در سلول dg13 فرمول را به صورت زیر بنویس,
(“”, If(cf51<0,cf51=
و در سلول de13 فرمول را به صورت زیر بنویس
("",If(cf51>0,cf51=
با سلام
من در یک سلول( مثلا A1) با یک if دو عدد دارم (110 و 90 )که تحت شرایطی مقدار A1 مساوی 90 است و در شرایط دیگر 110، میخواهم در سلول دیگر مثلا B1 طوری تنظیم شود که اگر مقدار A1 مساوی 110 شد، در سلول B1 اعداد کمتر از 56 قرمز و بزرگتر از آن سبز شود و همچنین در حالت دیگر اگر مقدار A1 مساوی 90 شد، در همان سلول B1 اعداد کمتر از 40 قرمز و بزرگتر از آن سبز شود. لطفا راهنمایی ام کنید ، شرط conditional formatting به تنهایی این قابلیت دو گانه را ندارد . با تشکر
با سلام خدمت شما
برای انجام این کار کافی است چهار مرتبه بر روی سلول B1 از Conditional Formatting و تابع and استفاده کنی
قابلیت دوگانه و چند گانه در ابزار Conditional Formatting امکان پذیر می باشد.
پاسخ سئوال به ایمیل شما ارسال گردید.
ممنون از لطفتون عالی بود.
سپاس
متشکرم از سایت بسیار خوبی که دارین
سلام
چجور میشه اینکار را انجام داد اگر یک سلول به رنگ قرمز شد کل همون ردیف قرمز شود
اگر سلول (براساس شرطی ک قبلا بهش داده بودیم)مشکی شد بقیه سلول های همون ردیف هم مشکی بشه.
با تشکر
با سلام خدمت شما
مطلبی که مورد نظر شماست اعمال Conditional Formatting بر اساس فرمت یک سلول است. در صورتی که Conditional Formatting بر اساس مقدار یک سلول (Cell Value) و نه فرمت سلول عمل می کند.
در حالت عادی برای انجام این کار راهی به نظرم نمی رسد (اگر دوستان راه حلی دارند می توانند ارائه کنند).
اما با استفاده از کدهای VBA این کار امکان پذیر هست.
سلام
میخواستم بدونم برای جمع تعدادی از داده ها آیا میشه کاری کرد که سلول هایی که به رنگ خاصی مثلا سبز در میان به صورت خودکار جمع بندی بشوند؟