فہرست کا خانہ
ٹیوٹوریل دکھاتا ہے کہ ایکسل میں AND کے ساتھ ساتھ OR منطق کے ساتھ ایک سے زیادہ IF اسٹیٹمنٹس کیسے بنائے جائیں۔ اس کے علاوہ، آپ سیکھیں گے کہ IF کو دوسرے ایکسل فنکشنز کے ساتھ کیسے استعمال کرنا ہے۔
ہمارے ایکسل IF ٹیوٹوریل کے پہلے حصے میں، ہم نے دیکھا کہ ٹیکسٹ کے لیے ایک شرط کے ساتھ ایک سادہ IF اسٹیٹمنٹ کیسے بنایا جائے، نمبر، تاریخیں، خالی اور غیر خالی۔ طاقتور ڈیٹا تجزیہ کے لیے، تاہم، آپ کو اکثر ایک وقت میں متعدد حالات کا جائزہ لینے کی ضرورت پڑ سکتی ہے۔ درج ذیل فارمولے کی مثالیں آپ کو ایسا کرنے کے سب سے مؤثر طریقے دکھائے گی۔
ایک سے زیادہ شرائط کے ساتھ IF فنکشن کا استعمال کیسے کریں
اصل میں، اس کی دو قسمیں ہیں۔ AND/OR منطق کی بنیاد پر متعدد معیارات کے ساتھ IF فارمولہ ۔ نتیجتاً، آپ کے IF فارمولے کے منطقی امتحان میں، آپ کو ان میں سے ایک فنکشن استعمال کرنا چاہیے:
- AND فنکشن - اگر تمام شرائط پوری ہو جائیں تو TRUE لوٹاتا ہے۔ دوسری صورت میں غلط۔
- یا فنکشن - اگر کوئی ایک شرط پوری ہوتی ہے تو TRUE لوٹاتا ہے۔ دوسری صورت میں غلط۔
نقطے کو بہتر طور پر واضح کرنے کے لیے، آئیے کچھ حقیقی زندگی کے فارمولوں کی مثالوں کی چھان بین کرتے ہیں۔
ایکسل IF اسٹیٹمنٹ کے ساتھ متعدد شرائط (اور منطق)
The دو یا زیادہ شرائط کے ساتھ Excel IF کا عمومی فارمولا یہ ہے:
IF(AND( condition1, condition2, …), value_if_true, value_if_false)انسان میں ترجمہ کیا گیا زبان میں، فارمولہ کہتا ہے: اگر شرط 1 صحیح ہے اور شرط 2 درست ہے، تو واپس جائیں۔ value_if_true ; دوسری صورت میں واپس کریں value_if_false ۔
فرض کریں کہ آپ کے پاس کالم B اور C میں دو ٹیسٹوں کے اسکور کی فہرست ہے۔ فائنل امتحان پاس کرنے کے لیے، طالب علم کے پاس دونوں اسکور 50 سے زیادہ ہونے چاہئیں۔
منطقی امتحان کے لیے، آپ درج ذیل AND بیان استعمال کرتے ہیں: AND(B2>50, C2>50)
اگر دونوں شرائط درست ہیں، تو فارمولہ "پاس" لوٹائے گا؛ اگر کوئی شرط غلط ہے - "فیل"۔
=IF(AND(B2>50, B2>50), "Pass", "Fail")
آسان ہے، ہے نا؟ نیچے دیا گیا اسکرین شاٹ ثابت کرتا ہے کہ ہمارا ایکسل IF /AND فارمولہ درست کام کرتا ہے:
اسی طرح، آپ ایک سے زیادہ ٹیکسٹ کنڈیشنز کے ساتھ ایکسل IF فنکشن استعمال کرسکتے ہیں۔
کے لیے مثال کے طور پر، اگر B2 اور C2 دونوں 50 سے زیادہ ہیں تو "اچھا" نکالنے کے لیے، "خراب" بصورت دیگر، فارمولہ ہے:
=IF(AND(B2="pass", C2="pass"), "Good!", "Bad")
اہم نوٹ! AND فنکشن تمام شرائط کو چیک کرتا ہے، یہاں تک کہ اگر پہلے سے ٹیسٹ شدہ (زبانیں) کی تشخیص غلط کی گئی ہو۔ اس طرح کا رویہ قدرے غیر معمولی ہے کیونکہ پروگرامنگ زبانوں میں سے زیادہ تر میں، اگر پچھلے ٹیسٹوں میں سے کوئی بھی غلط ثابت ہوا ہے تو اس کے بعد کے حالات کا تجربہ نہیں کیا جاتا ہے۔ خاصیت مثال کے طور پر، نیچے دیا گیا فارمولا #DIV/0! ("صفر سے تقسیم کریں" کی خرابی) اگر سیل A2 0 کے برابر ہے:
=IF(AND(A20, (1/A2)>0.5),"Good", "Bad")
اس سے بچیں، آپ کو نیسٹڈ IF فنکشن استعمال کرنا چاہیے:
=IF(A20, IF((1/A2)>0.5, "Good", "Bad"), "Bad")
<3
مزید معلومات کے لیے، براہ کرم ایکسل میں IF اور فارمولہ دیکھیں۔
ایکسل IF فنکشن ایک سے زیادہ کے ساتھشرائط (یا منطق)
اگر کوئی شرط پوری ہو جائے تو ایک کام کرنے کے لیے، بصورت دیگر کچھ اور کریں، IF اور OR افعال کے اس مجموعہ کو استعمال کریں:
IF(OR( condition1 , condition2 , …), value_if_true, value_if_false)اوپر زیر بحث IF/AND فارمولے سے فرق یہ ہے کہ اگر مخصوص شرائط میں سے کوئی صحیح ہے تو Excel TRUE لوٹاتا ہے۔
لہذا، اگر پچھلے فارمولے میں، ہم AND:
=IF(OR(B2>50, B2>50), "Pass", "Fail")
کی بجائے OR کا استعمال کرتے ہیں تو پھر جس کے دونوں امتحان میں 50 سے زیادہ پوائنٹس ہوں گے وہ "پاس" ہو جائے گا۔ کالم D. اس طرح کے حالات کے ساتھ، ہمارے طلباء کے پاس فائنل امتحان پاس کرنے کا ایک بہتر موقع ہے (Yvette خاص طور پر بدقسمتی سے صرف 1 پوائنٹ سے فیل ہونا :)
ٹپ۔ اگر آپ متن کے ساتھ متعدد IF اسٹیٹمنٹ بنا رہے ہیں اور OR منطق کے ساتھ ایک سیل میں ایک قدر کی جانچ کر رہے ہیں (یعنی ایک سیل "یہ" یا "وہ" ہو سکتا ہے)، تو آپ مزید کمپیکٹ بنا سکتے ہیں۔ ایک سرنی مستقل کا استعمال کرتے ہوئے فارمولہ۔
مثال کے طور پر، سیل B2 کو "بند" کے بطور نشان زد کرنے کے لیے اگر سیل B2 یا تو "ڈیلیور" یا "ادا" ہے، تو فارمولا یہ ہے:
=IF(OR(B2={"delivered", "paid"}), "Closed", "")
مزید فارمولے کی مثالیں Excel IF یا فنکشن میں مل سکتی ہیں۔
IF متعدد AND & یا بیانات
اگر آپ کے کام کو متعدد شرائط کے کئی سیٹوں کا جائزہ لینے کی ضرورت ہے، تو آپ کو AND & OR ایک وقت میں کام کرتا ہے۔
ہمارے نمونے کی میز میں، فرض کریں کہ آپ کے پاس امتحان کے نتائج کی جانچ کے لیے درج ذیل معیار ہیں:
- شرط 1:امتحان1>50 اور امتحان2>50
- شرط 2: امتحان1>40 اور امتحان2>60
اگر ان میں سے کوئی بھی شرط پوری ہو جاتی ہے تو حتمی امتحان پاس سمجھا جاتا ہے۔
پہلی نظر میں، فارمولہ تھوڑا مشکل لگتا ہے، لیکن حقیقت میں ایسا نہیں ہے! آپ صرف مندرجہ بالا شرائط میں سے ہر ایک کو AND بیان کے طور پر ظاہر کرتے ہیں اور انہیں OR فنکشن میں داخل کرتے ہیں (چونکہ دونوں شرائط کو پورا کرنا ضروری نہیں ہے، یا تو کافی ہوگا):
OR(AND(B2>50, C2>50), AND(B2>40, C2>60)
پھر، استعمال کریں IF کے منطقی ٹیسٹ کے لیے OR فنکشن اور مطلوبہ value_if_true اور value_if_false اقدار فراہم کرتا ہے۔ نتیجے کے طور پر، آپ کو ایک سے زیادہ AND/OR شرائط کے ساتھ درج ذیل IF فارمولہ ملتا ہے:
=IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")
نیچے دیے گئے اسکرین شاٹ سے ظاہر ہوتا ہے کہ ہم نے فارمولہ درست کیا ہے:
قدرتی طور پر آپ اپنے IF فارمولوں میں صرف دو AND/OR فنکشنز استعمال کرنے تک محدود نہیں ہیں۔ آپ ان میں سے زیادہ سے زیادہ استعمال کر سکتے ہیں جتنی آپ کی کاروباری منطق کی ضرورت ہے، بشرطیکہ:
- ایکسل 2007 اور اس سے زیادہ میں، آپ کے پاس 255 سے زیادہ دلائل نہیں ہیں، اور IF فارمولے کی کل لمبائی سے زیادہ نہیں ہے۔ 8,192 حروف۔
- ایکسل 2003 اور اس سے کم میں، 30 سے زیادہ دلائل نہیں ہیں، اور آپ کے IF فارمولے کی کل لمبائی 1,024 حروف سے زیادہ نہیں ہے۔
نیسٹڈ IF اسٹیٹمنٹ ایک سے زیادہ منطقی ٹیسٹ چیک کریں
اگر آپ ایک فارمولے کے اندر ایک سے زیادہ منطقی ٹیسٹوں کا جائزہ لینا چاہتے ہیں، تو آپ کئی فنکشنز کو ایک دوسرے میں داخل کر سکتے ہیں۔ ایسے فنکشنز کو نیسٹڈ کہا جاتا ہے۔IF فنکشنز ۔ یہ خاص طور پر مفید ثابت ہوتے ہیں جب آپ منطقی ٹیسٹ کے نتائج کی بنیاد پر مختلف اقدار واپس کرنا چاہتے ہیں۔
یہاں ایک عام مثال ہے: فرض کریں کہ آپ طلباء کی کامیابیوں کو " اچھی " کے طور پر اہل بنانا چاہتے ہیں۔ " اطمینان بخش " اور " خراب " درج ذیل اسکور کی بنیاد پر:
- اچھا: 60 یا اس سے زیادہ (>=60)
- اطمینان بخش: 40 اور 60 کے درمیان (>40 اور <60)
- ناقص: 40 یا اس سے کم (<=40)
فارمولہ لکھنے سے پہلے آرڈر پر غور کریں فنکشنز کی جو آپ نیسٹ کرنے جا رہے ہیں۔ ایکسل منطقی ٹیسٹوں کا اندازہ اسی ترتیب سے کرے گا جس ترتیب سے وہ فارمولے میں دکھائی دیتے ہیں۔ ایک بار جب کسی شرط کا درست جائزہ لیا جاتا ہے، تو اس کے بعد کی شرائط کی جانچ نہیں کی جاتی ہے، یعنی فارمولہ پہلے TRUE نتیجہ کے بعد رک جاتا ہے۔
ہمارے معاملے میں، فنکشنز کو بڑے سے چھوٹے تک ترتیب دیا جاتا ہے:
=IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))
قدرتی طور پر، ضرورت پڑنے پر آپ مزید فنکشنز کو نیسٹ کرسکتے ہیں (جدید ورژن میں 64 تک)۔
مزید معلومات کے لیے، براہ کرم ایکسل میں متعدد نیسٹڈ IF اسٹیٹمنٹس کو استعمال کرنے کا طریقہ دیکھیں۔
متعدد شرائط کے ساتھ ایکسل IF ارے فارمولہ
ایکسل IF ٹیسٹ کرنے کا ایک اور طریقہ ایک سے زیادہ شرائط ایک صف کے فارمولے کا استعمال کرتے ہوئے ہیں۔
اور منطق کے ساتھ حالات کا جائزہ لینے کے لیے، ستارے کا استعمال کریں:
IF( condition1 ) * ( condition2 ) * …, value_if_true, value_if_false)یا منطق کے ساتھ حالات کو جانچنے کے لیے، جمع کا نشان استعمال کریں:
IF( condition1 ) + ( condition2 ) + …,value_if_true, value_if_false)ایک صف کے فارمولے کو درست طریقے سے مکمل کرنے کے لیے، Ctrl + Shift + Enter کیز کو ایک ساتھ دبائیں۔ ایکسل 365 اور ایکسل 2021 میں، یہ متحرک صفوں کے لیے سپورٹ کی وجہ سے باقاعدہ فارمولے کے طور پر بھی کام کرتا ہے۔
مثال کے طور پر، اگر B2 اور C2 دونوں 50 سے زیادہ ہیں تو "Pass" حاصل کرنے کے لیے، فارمولا یہ ہے:
=IF((B2>50) * (C2>50), "Pass", "Fail")
میرے ایکسل 365 میں، ایک عام فارمولا بالکل ٹھیک کام کرتا ہے (جیسا کہ آپ اوپر اسکرین شاٹس میں دیکھ سکتے ہیں)۔ ایکسل 2019 اور اس سے کم میں، یاد رکھیں کہ Ctrl + Shift + Enter شارٹ کٹ استعمال کر کے اسے ایک ارے فارمولہ بنانا ہے۔
OR منطق کے ساتھ متعدد شرائط کا جائزہ لینے کے لیے، فارمولا یہ ہے:
=IF((B2>50) + (C2>50), "Pass", "Fail")
6 /VLOOKUP میں ایک خرابی
جب VLOOKUP یا دیگر تلاش کا فنکشن کچھ نہیں ڈھونڈ سکتا ہے، تو یہ #N/A خرابی لوٹاتا ہے۔ اپنے ٹیبلز کو بہتر بنانے کے لیے، آپ صفر، خالی یا مخصوص متن واپس کر سکتے ہیں اگر #N/A ہو۔ اس کے لیے یہ عام فارمولہ استعمال کریں:
IF(ISNA(VLOOKUP(…)), value_if_na , VLOOKUP(…))مثال کے طور پر:
If #N/ واپسی 0:
اگر E1 میں تلاش کی قدر نہیں ملتی ہے، تو فارمولہ صفر لوٹاتا ہے۔
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))
اگر #N/A خالی لوٹاتا ہے:
اگر تلاش کی قدر نہیں ملتی ہے، تو فارمولہ کچھ نہیں لوٹاتا ہے (خالی سٹرنگ)۔
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))
اگر #N/A کچھ متن واپس کرتا ہے:
اگر تلاش کی قدر نہیں ملی،فارمولا مخصوص متن لوٹاتا ہے۔
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Not found", VLOOKUP(E1, A2:B10, 2, FALSE))
مزید فارمولے کی مثالوں کے لیے، براہ کرم ایکسل میں IF اسٹیٹمنٹ کے ساتھ VLOOKUP دیکھیں۔
مثال 2۔ IF SUM، AVERAGE، MIN اور MAX کے ساتھ فنکشنز
مخصوص معیار کی بنیاد پر سیل ویلیوز کو جمع کرنے کے لیے، Excel SUMIF اور SUMIFS فنکشنز فراہم کرتا ہے۔
کچھ حالات میں، آپ کے بزنس لاجک کو IF کے منطقی ٹیسٹ میں SUM فنکشن کو شامل کرنے کی ضرورت پڑ سکتی ہے۔ مثال کے طور پر، B2 اور C2 میں قدروں کے مجموعے کے لحاظ سے مختلف ٹیکسٹ لیبلز کو واپس کرنے کے لیے، فارمولہ یہ ہے:
=IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))
اگر رقم 130 سے زیادہ ہے تو نتیجہ "اچھا " اگر 110 سے زیادہ ہے تو - "اطمینان بخش'، اگر 110 یا اس سے کم - "ناقص"۔
اسی طرح کے انداز میں، آپ IF کے منطقی امتحان میں AVERAGE فنکشن کو سرایت کر سکتے ہیں اور اوسط سکور کی بنیاد پر مختلف لیبل واپس کر سکتے ہیں۔ :
=IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))
یہ فرض کرتے ہوئے کہ کل سکور کالم D میں ہے، آپ MAX اور MIN فنکشنز کی مدد سے اعلیٰ اور کم ترین اقدار کی شناخت کر سکتے ہیں:
=IF(D2=MAX($D$2:$D$10), "Best result", "")
<3
=IF(D2=MAX($D$2:$D$10), "Best result", "")
دونوں لیبلز کو ایک کالم میں رکھنے کے لیے، مندرجہ بالا فنکشنز کو ایک دوسرے میں نیسٹ کریں:
=IF(D2=MAX($D$2:$D$10), "Best result", IF(D2=MIN($D$2:$D$10), "Worst result", ""))
اسی طرح، آپ IF کو اپنی مرضی کے مطابق استعمال کر سکتے ہیں۔ فنکشنز۔ مثال کے طور پر، آپ سیل کے رنگ کی بنیاد پر مختلف نتائج واپس کرنے کے لیے اسے GetCellColor یا GetCellFontColor کے ساتھ جوڑ سکتے ہیں۔
اس کے علاوہ، Excel حالات کی بنیاد پر ڈیٹا کا حساب لگانے کے لیے متعدد فنکشن فراہم کرتا ہے۔ تفصیلی فارمولہ مثالوں کے لیے، براہ کرم درج ذیل کو چیک کریں۔ٹیوٹوریلز:
- COUNTIF - ایک شرط پر پورا اترنے والے سیلز کی گنتی کریں
- COUNTIFS - ایک سے زیادہ معیار کے ساتھ سیل شمار کریں
- SUMIF - مشروط طور پر سیلز کا مجموعہ
- SUMIFS - ایک سے زیادہ معیار کے ساتھ سیلز کا مجموعہ
مثال 3۔ IF ISNUMBER، ISTEXT اور ISBLANK کے ساتھ
متن، نمبرز اور خالی سیلز کی شناخت کے لیے، Microsoft Excel خاص فنکشن فراہم کرتا ہے جیسے ISTEXT، ISNUMBER اور ISBLANK۔ ان کو تین نیسٹڈ IF سٹیٹمنٹس کے منطقی ٹیسٹ میں رکھ کر، آپ ایک ہی بار میں تمام مختلف ڈیٹا کی اقسام کی شناخت کر سکتے ہیں:
=IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))
مثال 4. IF اور CONCATENATE
To IF کا نتیجہ اور کچھ متن کو ایک سیل میں آؤٹ پٹ کریں، CONCATENATE یا CONCAT (ایکسل 2016 - 365 میں) اور IF فنکشنز کو ایک ساتھ استعمال کریں۔ مثال کے طور پر:
=CONCATENATE("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))
=CONCAT("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))
نیچے دیے گئے اسکرین شاٹ کو دیکھ کر، آپ کو شاید ہی کسی وضاحت کی ضرورت ہوگی کہ فارمولہ کیا کرتا ہے:
اگر ISERROR ایکسل میں / ISNA فارمولہ
ایکسل کے جدید ورژن میں غلطیوں کو پھنسانے اور انہیں کسی اور حساب یا پہلے سے طے شدہ قدر - IFERROR (ایکسل 2007 اور بعد میں) اور IFNA (ایکسل 2013 اور بعد میں) کے ساتھ تبدیل کرنے کے لیے خصوصی کام ہوتے ہیں۔ ایکسل کے پرانے ورژنز میں، آپ اس کے بجائے IF ISERROR اور IF ISNA کے مجموعے استعمال کر سکتے ہیں۔
فرق یہ ہے کہ IFERROR اور ISERROR ایکسل کی تمام ممکنہ خرابیوں کو ہینڈل کرتے ہیں، بشمول #VALUE!, #N/A, #NAME?, #REF!، #NUM!، #DIV/0!، اور #NULL!۔ جبکہ IFNA اور ISNA مکمل طور پر #N/A غلطیوں میں مہارت رکھتے ہیں۔
مثال کے طور پر،"تقسیم از صفر" کی غلطی (#DIV/0!) کو اپنے حسب ضرورت متن سے تبدیل کریں، آپ درج ذیل فارمولہ استعمال کر سکتے ہیں:
=IF(ISERROR(A2/B2), "N/A", A2/B2)
اور مجھے بس اتنا ہی کہنا ہے ایکسل میں IF فنکشن۔ میں پڑھنے کے لیے آپ کا شکریہ ادا کرتا ہوں اور امید کرتا ہوں کہ آپ کو اگلے ہفتے ہمارے بلاگ پر ملوں گا!
ڈاؤن لوڈ کرنے کے لیے پریکٹس ورک بک
Excel IF متعدد معیارات - مثالیں (.xlsx فائل)