فہرست کا خانہ
کیا آپ Excel VBA استعمال نہیں کرنا چاہتے اور فارمولہ کا استعمال کرتے ہوئے ایکسل میں فار لوپ بنانا چاہتے ہیں؟ اس آرٹیکل میں، میں نے دکھایا ہے کہ آپ فارمولوں کا استعمال کرتے ہوئے فار لوپ کو کیسے بنا سکتے ہیں۔
اگر آپ جانتے ہیں کہ Excel VBA کے ساتھ کوڈ کرنا ہے، تو آپ کو مبارک ہے 🙂 . لیکن، اگر آپ نے کبھی بھی VBA میں کوڈ نہیں لکھا یا اپنی ایکسل ورک بک کو Excel VBA کوڈ سے پاک رکھنا چاہتے ہیں، تو زیادہ تر وقت آپ کو باکس سے باہر سوچنا پڑتا ہے simple loop .
ورکنگ فائل ڈاؤن لوڈ کریں
نیچے دیے گئے لنک سے ورکنگ فائل ڈاؤن لوڈ کریں:
فارمولوں کا استعمال کرتے ہوئے لوپ بنائیں۔ xlsxفارمولہ کا استعمال کرتے ہوئے ایکسل میں فار لوپ بنانے کی 3 مثالیں
یہاں، میں 3 مثالوں کو ایکسل میں فور لوپ بنانے کے لیے دکھاؤں گا۔ فارمولا آئیے تفصیلی مثالیں دیکھتے ہیں۔
1. ایکسل میں میک فار لوپ کے لیے مشترکہ افعال کا اطلاق کرنا
اب، مجھے اس پس منظر سے آگاہ کریں جو مجھے یہ مثال لکھنے کی ترغیب دے رہا ہے۔
میں Udemy پر کچھ کورسز کا مصنف ہوں۔ کورسز میں سے ایک ایکسل مشروط فارمیٹنگ پر ہے۔ کورس کا عنوان ہے: 7 عملی مسائل کے ساتھ Excel مشروط فارمیٹنگ سیکھیں۔ [ اس کورس تک مفت رسائی حاصل کرنے کے لیے، یہاں کلک کریں ]۔
کورس ڈسکشن بورڈ میں , ایک طالب علم نے مجھ سے ذیل میں ایک سوال پوچھا [اسکرین شاٹ امیج]۔
Udemy میں ایک طالب علم کا سوال۔
اوپر والے سوال کو غور سے پڑھیں اور اسے حل کرنے کی کوشش کریں…
مذکورہ بالا مسئلہ کو حل کرنے کے اقدامات:
یہاں، میں OR ، OFFSET ، MAX ، MIN ، اور ROW فنکشنز کو ایکسل فارمولہ بنانے کے لیے استعمال کریں گے لوپ کے لیے ۔
- سب سے پہلے، آپ کا کام ایک نئی ورک بک کھولنا ہے اور مندرجہ بالا اقدار کو ایک ایک کرکے ورک شیٹ میں داخل کرنا ہے [سیل C5 سے شروع کریں] .
- دوسرے طور پر، پوری رینج کو منتخب کریں [سیل C5:C34 سے]۔
- تیسرے طور پر، ہوم ربن سے >> مشروط فارمیٹنگ کمانڈ پر کلک کریں۔
- آخر میں، ڈراپ ڈاؤن سے نیا اصول اختیار منتخب کریں۔
اس وقت، نئے فارمیٹنگ اصول ڈائیلاگ باکس ظاہر ہوتا ہے۔
- اب، سلیکٹ ایک رول ٹائپ ونڈو میں >> ; منتخب کریں یہ تعین کرنے کے لیے ایک فارمولہ استعمال کریں کہ کون سے سیلز کو فارمیٹ کرنا ہے اختیار۔
- پھر، فارمیٹ ویلیوز میں جہاں یہ فارمولہ درست ہے فیلڈ میں، یہ فارمولا ٹائپ کریں:
=OR(OFFSET(C5,MAX(ROW(C$5)-ROW(C5)+3,0),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)-OFFSET(C5,MAX(ROW($C$5)-ROW(C5),-3),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)=3)
- اب، ڈائیلاگ باکس میں فارمیٹ… بٹن پر کلک کرکے مناسب فارمیٹ کی قسم منتخب کریں۔
اس وقت، فارمیٹ سیلز کے نام سے ایک ڈائیلاگ باکس ظاہر ہوگا۔
- اب، سے بھریں اختیار >> آپ کو کسی بھی رنگ کا انتخاب کرنا ہوگا۔ یہاں، میں نے ہلکا نیلا پس منظر منتخب کیا۔ اس کے علاوہ، آپ نمونہ کو فوری طور پر دیکھ سکتے ہیں۔ اس صورت میں، کوئی بھی روشنی رنگ منتخب کرنے کی کوشش کریں۔ کیونکہ گہرا رنگ ان پٹ ڈیٹا کو چھپا سکتا ہے۔ پھر، آپ کو فونٹ کا رنگ تبدیل کرنے کی ضرورت پڑسکتی ہے۔
- پھر، آپ کو دبانا ہوگا۔ ٹھیک ہے فارمیشن لاگو کرنے کے لیے۔
- اس کے بعد، آپ کو ٹھیک ہے کو دبانا ہوگا فارمیٹنگ کا نیا اصول ڈائیلاگ باکس۔ یہاں، آپ نمونے کو فوری طور پر پیش نظارہ باکس میں دیکھ سکتے ہیں۔
آخر میں، آپ کو فارمیٹ شدہ نمبر ملیں گے۔
میں آپ کو مندرجہ بالا مسئلہ کو حل کرنے کے لیے الگورتھم دکھاتا ہوں:
- یہاں، آپ کو الگورتھم کو آسانی سے سمجھنے کے لیے، میں کروں گا دو حوالہ جات کے ساتھ پوری چیز کی وضاحت کریں: خلیات C11 اور C17 ۔ سیلز C11 اور C17 میں، قدریں بالترتیب 10 اور 20 ہیں (اوپر تصویر)۔ اگر آپ ایکسل فارمولوں کے عادی ہیں، تو آپ OFFSET فنکشن کو سونگھ سکتے ہیں، جیسا کہ OFFSET فنکشن ریفرنس پوائنٹس کے ساتھ کام کرتا ہے۔
- اب، تصور کریں کہ میں قدریں لے رہا ہوں۔ سیل رینجز کا C8:C11 & C11:C14 ، اور C14:C17 & C17: C20 ساتھ ساتھ [نیچے تصویر]۔ ریفرنس سیلز C11 اور C17 ہیں اور میں ریفرنس سیل کے ارد گرد کل 7 سیل لے رہا ہوں۔ آپ کو مندرجہ ذیل کی طرح ایک خیالی تصویر ملے گی۔ پہلے حصے سے، آپ تصویر سے پیٹرن تلاش کرسکتے ہیں۔ C9–C12=3 , C10-C13=3 ، ایک پیٹرن ہے۔ لیکن دوسرے حصے کے لیے، ایسا کوئی نمونہ نہیں ہے۔
- تو، آئیے مندرجہ بالا پیٹرن کو ذہن میں رکھتے ہوئے الگورتھم بناتے ہیں۔ عام فارمولہ بنانے سے پہلے، میں دکھاؤں گا کہ فارمولے کیا ہوں گے۔سیلز C11 اور C17 اور پھر اسے سب کے لیے عام بنانے کے لیے فارمولے میں ترمیم کریں گے۔ ایک حوالہ نقطہ کے لیے (جیسے C11 یا C17 )، میں اس کے ارد گرد کل 7 سیل لوں گا (بشمول حوالہ نقطہ) اور انہیں ایک ساتھ رکھوں گا۔ ارے بنانے والے فارمولے میں طرف۔ پھر میں صفوں کا فرق معلوم کروں گا اگر کوئی فرق 3 کے برابر ہے کہ حوالہ سیل کی قیمت TRUE ہوگی۔
- یہاں، میں کر سکتا ہوں اسے آسانی سے OFFSET فنکشن کا استعمال کرتے ہوئے کریں کیونکہ OFFSET فنکشن ایک صف واپس کرتا ہے۔ سیل ریفرنس C11 کے لیے کہیں، میں اس طرح کا فارمولا لکھ سکتا ہوں: =OR(OFFSET(C11, 0, 0, 4, 1)-OFFSET(C11, -3, 0, 4, 1)=3) ۔ یہ فارمولا کیا واپس آئے گا؟ فارمولے کا پہلا آفسیٹ فنکشن صف واپس کرے گا: {10; 11; 12; 15} ، دوسرا آفسیٹ فنکشن صف واپس کرے گا {5; 8; 9; 10 ۔ اور آپ جانتے ہیں {10; 11; 12; 15} – {5; 8; 9; 10} = {10-5; 11-8; 12-9; 15-10} = {5; 3; 3; 5 ۔ جب اس صف کو منطقی طور پر =3 کے ساتھ جانچا جاتا ہے تو Excel اندرونی طور پر اس طرح حساب کرتا ہے: {5=3; 3=3; 3=3; 5=3} = {جھوٹا؛ سچ سچ غلط ۔ جب OR فنکشن اس صف پر لاگو ہوتا ہے: OR({False; True; False; True} ، آپ کو TRUE ملتا ہے۔ تو سیل C11 واپس آنے پر حقیقی قدریں حاصل کرتا ہے۔
- تو، میرے خیال میں آپ کو پورا تصور مل گیا ہے کہ یہ الگورتھم کیسے کام کرے گا۔ اب ایک مسئلہ ہے۔ یہ فارمولہ یہاں سے کام کر سکتا ہے۔سیل C8 ، سیل C8 کے اوپر، وہاں 3 سیل ہیں۔ لیکن سیلز C5، C6، اور C7 کے لیے یہ فارمولا کام نہیں کر سکتا۔ لہذا ان سیلز کے لیے فارمولے میں ترمیم کی جانی چاہیے۔
- اب، سیلز C5 سے C7 کے لیے، ہم چاہتے ہیں کہ فارمولہ اوپری<1 کو مدنظر نہیں رکھے گا۔> 3 خلیات۔ مثال کے طور پر، سیل C6 کے لیے، ہمارا فارمولا سیل C11 کے فارمولے جیسا نہیں ہوگا: =OR(OFFSET(C11, 0, 0, 4, 1)- OFFSET(C11, -3, 0, 4, 1)=3) .
- یہاں، سیل C5 کے لیے، فارمولا اس طرح ہوگا: OR(OFFSET (C5, 3, 0, 1, 1)-OFFSET(C5, 0, 0, 1, 1)=3) .
- پھر، سیل C6 کے لیے، فارمولا اس طرح ہوگا: OR(OFFSET(C6, 2, 0, 2, 1)-OFFSET(C6, -1, 0, 2, 1)=3) .
- بعد کہ، سیل C7 کے لیے، فارمولا اس طرح ہوگا: OR(OFFSET(C7, 1, 0, 3, 1)-OFFSET(C7, -2, 0, 3, 1)= 3) ۔
- دوبارہ، سیل C8 کے لیے، فارمولہ اس طرح ہوگا: OR(OFFSET(C8, 0, 0, 4, 1)-OFFSET( C8,-3, 0, 4, 1)=3) ; [یہ عام فارمولا ہے]۔
- پھر، سیل C9 کے لیے، فارمولہ اس طرح ہوگا: OR(OFFSET(C9, 0, 0, 4, 1)- آفسیٹ(C9,-3, 0, 4, 1)=3) ; [یہ عمومی فارمولہ ہے]۔
- آخر میں، کیا آپ کو مندرجہ بالا فارمولوں سے کچھ نمونے ملتے ہیں؟ پہلی OFFSET فنکشن کی قطاروں کی دلیل 3 سے گھٹ کر 0 ہوگئی ہے۔ اونچائی کی دلیل 1 سے 4 تک بڑھ گئی ہے۔ دوسری OFFSET فنکشن کی قطار کی دلیل سے کم ہوگئی ہے۔ 0 سے -3 اور اونچائی کی دلیل 1 سے 4 تک بڑھ گئی ہے۔
- سب سے پہلے، پہلا OFFSET فنکشن کی قطار کی دلیل میں اس طرح ترمیم کی جائے گی: MAX(ROW(C$5)-ROW(C5)+3,0)
- دوسرے، دوسری OFFSET فنکشن کے rows argument میں اس طرح ترمیم کی جائے گی: MAX(ROW(C$5)-ROW(C5),-3)
- تیسرے، پہلا OFFSET فنکشن کی اونچائی کی دلیل کو اس طرح تبدیل کیا جائے گا: MIN(ROW(C5)-ROW(C$5)+1,4)
- چوتھا، دوسرا OFFSET فنکشن کی اونچائی کی دلیل میں اس طرح ترمیم کی جائے گی: MIN(ROW(C5)-ROW(C$5)+1,4)
- اب، اوپر کی ترمیم کو سمجھنے کی کوشش کریں۔ یہ سمجھنا اتنا مشکل نہیں ہے۔ یہ تمام چار ترمیمات ایکسل VBA کے FOR LOOP کے طور پر کام کر رہی ہیں لیکن میں نے انہیں ایکسل فارمولوں کے ساتھ بنایا ہے۔
- تو، آپ کو وہ طریقے مل گئے کہ عام فارمولہ C5:C34 سے سیلز کے لیے کام کرتا ہے۔
تو میں ایکسل اسپریڈشیٹ میں لوپنگ کے بارے میں بات کر رہا تھا۔ لہذا، یہ ایکسل میں لوپنگ کی ایک بہترین مثال ہے۔ یہاں، جب بھی فارمولہ 7 سیل لیتا ہے اور ایک مخصوص قدر معلوم کرنے کے لیے سیلز پر کام کرتا ہے۔
2. IF & یا ایکسل میں لوپ بنانے کے لیے فنکشنز
اس مثال میں، فرض کریں کہ آپ یہ چیک کرنا چاہتے ہیں کہ سیلز میں کوئی ویلیو ہے یا نہیں۔ مزید برآں، ایکسل VBA فار لوپ، کے ساتھ آپ یہ آسانی سے کر سکتے ہیں لیکن یہاں، میں یہ ایکسل فارمولے کا استعمال کرتے ہوئے کروں گا۔
اب، آپ استعمال کر سکتے ہیں۔ IF ، اور OR ایکسل فارمولہ کے طور پر فور لوپ بنانے کے لیے کام کرتا ہے۔ مزید برآں، آپ اپنی ترجیح کے مطابق اس فارمولے میں ترمیم کر سکتے ہیں۔ مراحل ذیل میں دیئے گئے ہیں۔
اقدامات:
- سب سے پہلے، آپ کو ایک مختلف سیل منتخب کرنا ہوگا E5 جہاں آپ دیکھنا چاہتے ہیں۔ Status .
- دوسرے طور پر، آپ کو E5 سیل میں متعلقہ فارمولہ استعمال کرنا چاہیے۔
=IF(OR(B5="",C5="",D5=""),"Info Missing","Done")
- بعد میں، نتیجہ حاصل کرنے کے لیے ENTER دبائیں۔ 14>
- سب سے پہلے، B5=”” 1st منطق ہے، جو یہ جانچے گی کہ آیا سیل B5 میں کوئی قدر ہے یا نہیں۔
- دوسرے طور پر، C5=”” 2nd منطق ہے، جو یہ جانچے گی کہ آیا سیل C5 میں کوئی قدر ہے یا نہیں۔
- تیسرے طور پر، D5=”” تیسرا منطق ہے۔ اسی طرح، جو چیک کرے گا کہ سیل D5 میں کوئی قدر ہے یا نہیں۔
- جب OR فنکشن TRUE دیتا ہے تو آپ کو " Info Missing " بطور Status ملے گا۔ . بصورت دیگر، آپ کو Status کے بطور " Done " ملے گا۔
- اس کے بعد، آپ کو Fill ہینڈل<کو گھسیٹنا ہوگا۔ 2> بقیہ میں متعلقہ ڈیٹا کو آٹو فل کا آئیکنسیل E6:E13 ۔ 17 .
<7
فارمولہ کی خرابی
یہاں، یا فنکشن TRUE واپس آئے گا اگر دی گئی منطق میں سے کوئی بھی TRUE .
اب، IF فنکشن نتیجہ دیتا ہے جو ایک دی گئی شرط کو پورا کرے گا۔ .
3. ایکسل میں فار لوپ بنانے کے لیے SUMIFS فنکشن کا استعمال
فرض کریں، آپ کسی خاص شخص کے لیے کل بل بنانا چاہتے ہیں۔ اس صورت میں، آپ ایکسل فارمولے کا استعمال کرتے ہوئے فار لوپ استعمال کر سکتے ہیں۔ یہاں، میں ایکسل میں فار لوپ کو بنانے کے لیے SUMIFS فنکشن استعمال کروں گا۔ مراحل ذیل میں دیئے گئے ہیں۔
مرحلہ:
- سب سے پہلے، آپ کو ایک مختلف سیل منتخب کرنا ہوگا F7 جہاں آپ دیکھنا چاہتے ہیں۔ Status .
- دوسرے طور پر، آپ کو F7 سیل میں متعلقہ فارمولہ استعمال کرنا چاہیے۔
=SUMIFS($C$5:$C$13,$B$5:$B$13,E7)
- بعد میں، نتیجہ حاصل کرنے کے لیے ENTER دبائیں۔ 14>
- یہاں، $C$5:$C$13 ڈیٹا رینج ہے جہاں سے SUMIFS فنکشن سمیشن کرے گا۔
- پھر، $B$5:$B$13 ڈیٹا رینج ہے جہاں سے SUMIFS فنکشن دیئے گئے معیار کو چیک کرے گا 12 13>
- اس کے بعد، آپ کو باقی سیلز F8:F10 میں متعلقہ ڈیٹا کو آٹو فل کرنے کے لیے Fill Handle آئیکن کو گھسیٹنا ہوگا۔ 13>
<7
فارمولہ کی خرابی
آخر میں آپ کو نتیجہ مل جائے گا۔
نتیجہ
ہمیں امید ہے کہ آپیہ مضمون مددگار پایا. یہاں، ہم نے فارمولوں کا استعمال کرتے ہوئے ایکسل میں فور لوپ بنانے کے لیے 3 موزوں مثالوں کی وضاحت کی ہے۔ ایکسل سے متعلق مزید مواد جاننے کے لیے آپ ہماری ویب سائٹ Exceldemy ملاحظہ کر سکتے ہیں۔ براہ کرم، تبصرہ، مشورے، یا سوالات چھوڑیں اگر آپ کے پاس ذیل کے تبصرے والے حصے میں ہے۔