فہرست کا خانہ
اس ٹیوٹوریل میں، آپ سیکھیں گے کہ ایکسل میں ایک ڈائنامک نام کی رینج کیسے بنائی جائے اور اسے فارمولوں میں کیسے استعمال کیا جائے تاکہ نئے ڈیٹا کو خود بخود حساب میں شامل کیا جائے۔
گزشتہ ہفتے ٹیوٹوریل میں، ہم نے ایکسل میں جامد نام کی حد کی وضاحت کرنے کے مختلف طریقوں کو دیکھا۔ ایک جامد نام ہمیشہ ایک ہی سیلز کا حوالہ دیتا ہے، یعنی جب بھی آپ نیا شامل کرتے ہیں یا موجودہ ڈیٹا کو ہٹاتے ہیں تو آپ کو رینج کا حوالہ دستی طور پر اپ ڈیٹ کرنا ہوگا۔
اگر آپ مسلسل بدلتے ہوئے ڈیٹا سیٹ کے ساتھ کام کر رہے ہیں، تو ہو سکتا ہے کہ آپ اپنی نامزد کردہ رینج کو متحرک بنائیں تاکہ یہ خود بخود نئی شامل کردہ اندراجات یا معاہدوں کو ایڈجسٹ کرنے کے لیے پھیل جائے تاکہ ہٹائے گئے ڈیٹا کو خارج کیا جا سکے۔ اس ٹیوٹوریل میں مزید، آپ کو یہ کرنے کے طریقہ کے بارے میں مرحلہ وار تفصیلی رہنمائی ملے گی۔
ایکسل میں متحرک نام کی حد کیسے بنائی جائے
کے لیے شروع کرنے والے، آئیے ایک ڈائنامک نام کی رینج بنائیں جس میں ایک کالم اور قطاروں کی متغیر تعداد ہو۔ اسے مکمل کرنے کے لیے، ان اقدامات کو انجام دیں:
- فارمولہ ٹیب پر، تعریف شدہ نام گروپ میں، نام کی وضاحت کریں پر کلک کریں۔ . یا، ایکسل نیم مینجر کو کھولنے کے لیے Ctrl + F3 دبائیں، اور نیا… بٹن پر کلک کریں۔
- کسی بھی طرح سے، نیا نام ڈائیلاگ باکس کھل جائے گا، جہاں آپ مندرجہ ذیل تفصیلات بتاتے ہیں:
- نام باکس میں، اپنی ڈائنامک رینج کے لیے نام ٹائپ کریں۔
- Scope ڈراپ ڈاؤن میں، سیٹ کریں نام کی گنجائش زیادہ تر میں ورک بک (پہلے سے طے شدہ) کی سفارش کی جاتی ہے۔کیسز۔
- حوالہ دیتا ہے باکس میں، آف سیٹ کاؤنٹا یا انڈیکس کاؤنٹا فارمولا درج کریں۔
- ٹھیک پر کلک کریں۔ ہو گیا!
مندرجہ ذیل اسکرین شاٹ میں، ہم ایک متحرک نام کی حد آئٹمز کی وضاحت کرتے ہیں جو کالم A میں تمام ڈیٹا والے سیلز کو ایڈجسٹ کرتا ہے، سوائے ہیڈر قطار کے :
ایکسل ڈائنامک نامی رینج کی وضاحت کرنے کے لیے آف سیٹ فارمولہ
ایکسل میں ڈائنامک نام کی رینج بنانے کا عمومی فارمولا درج ذیل ہے:
آف سیٹ ( first_cell, 0, 0, COUNTA( کالم), 1)کہاں:
- پہلا_سیل - پہلا نام کی حد میں شامل کرنے کے لیے آئٹم، مثال کے طور پر $A$2۔
- کالم - کالم کا ایک مطلق حوالہ جیسے $A:$A.
اس فارمولے کے بنیادی حصے میں، آپ دلچسپی کے کالم میں غیر خالی خلیوں کی تعداد حاصل کرنے کے لیے COUNTA فنکشن استعمال کرتے ہیں۔ یہ نمبر براہ راست OFFSET(reference, rows, cols, [height], [width]) فنکشن کے height argument پر جاتا ہے جو یہ بتاتا ہے کہ کتنی قطاریں واپس کرنی ہیں۔
اس سے آگے، یہ ایک عام آفسیٹ فارمولہ ہے، جہاں:
- حوالہ نقطہ آغاز ہے جہاں سے آپ آفسیٹ (first_cell) کی بنیاد رکھتے ہیں۔
- قطاریں اور cols دونوں 0 ہیں، کیونکہ آفسیٹ کے لیے کوئی کالم یا قطار نہیں ہے۔
- چوڑائی 1 کالم کے برابر ہے۔
مثال کے طور پر، شیٹ3 میں کالم A کے لیے ایک متحرک نام کی حد بنانے کے لیے، سیل A2 سے شروع ہو کر، ہم یہ فارمولہ استعمال کرتے ہیں:
=OFFSET(Sheet3!$A$2, 0, 0, COUNTA(Sheet3!$A:$A), 1)
نوٹ۔ اگر آپ تعریف کر رہے ہیں۔موجودہ ورک شیٹ میں ایک متحرک رینج، آپ کو حوالہ جات میں شیٹ کا نام شامل کرنے کی ضرورت نہیں ہے، Excel خود بخود آپ کے لیے یہ کام کرے گا۔ اگر آپ کسی اور شیٹ کے لیے رینج بنا رہے ہیں، تو شیٹ کے نام کے ساتھ سیل یا رینج کے حوالے کا سابقہ لگائیں اور اس کے بعد فجائیہ پوائنٹ (جیسا کہ اوپر فارمولہ کی مثال میں)۔
انڈیکس فارمولہ میں ایک متحرک نام کی حد بنانے کے لیے Excel
ایکسل ڈائنامک رینج بنانے کا ایک اور طریقہ INDEX فنکشن کے ساتھ COUNTA کا استعمال کرنا ہے۔
first_cell:INDEX( column,COUNTA( کالم))یہ فارمولہ دو حصوں پر مشتمل ہے:
- رینج آپریٹر کے بائیں جانب (:)، آپ $A$2 کی طرح ہارڈ کوڈڈ اسٹارٹنگ حوالہ ڈالتے ہیں۔ .
- دائیں جانب، آپ اختتامی حوالہ معلوم کرنے کے لیے INDEX(array, row_num, [column_num]) فنکشن استعمال کرتے ہیں۔ یہاں، آپ صف کے لیے پورا کالم A فراہم کرتے ہیں اور قطار نمبر حاصل کرنے کے لیے COUNTA کا استعمال کرتے ہیں (یعنی کالم A میں داخل نہ ہونے والے خلیوں کی تعداد)۔
ہمارے نمونے کے ڈیٹاسیٹ کے لیے (براہ کرم دیکھیں مندرجہ بالا اسکرین شاٹ)، فارمولہ مندرجہ ذیل ہے:
=$A$2:INDEX($A:$A, COUNTA($A:$A))
چونکہ کالم A میں 5 غیر خالی سیل ہیں، بشمول ایک کالم ہیڈر، COUNTA 5 لوٹاتا ہے۔ نتیجتاً، INDEX $A لوٹاتا ہے۔ $5، جو کالم A میں آخری استعمال شدہ سیل ہے (عام طور پر ایک انڈیکس فارمولہ ایک قدر واپس کرتا ہے، لیکن حوالہ آپریٹر اسے حوالہ واپس کرنے پر مجبور کرتا ہے)۔ اور کیونکہ ہم نے $A$2 کو نقطہ آغاز کے طور پر مقرر کیا ہے، حتمی نتیجہفارمولہ رینج ہے $A$2:$A$5۔
نئی تخلیق شدہ ڈائنامک رینج کو جانچنے کے لیے، آپ COUNTA سے آئٹمز کی گنتی حاصل کر سکتے ہیں:
=COUNTA(Items)
اگر سب کچھ ٹھیک طریقے سے کیا جائے تو، فارمولے کا نتیجہ تبدیل ہو جائے گا جب آپ فہرست میں آئٹمز کو شامل کریں یا ہٹا دیں:
نوٹ۔ اوپر زیر بحث دو فارمولے ایک ہی نتیجہ دیتے ہیں، تاہم کارکردگی میں فرق ہے جس سے آپ کو آگاہ ہونا چاہیے۔ OFFSET ایک غیر مستحکم فنکشن ہے جو شیٹ میں ہر تبدیلی کے ساتھ دوبارہ گنتی کرتا ہے۔ طاقتور جدید مشینوں اور معقول سائز کے ڈیٹا سیٹس پر، یہ کوئی مسئلہ نہیں ہونا چاہیے۔ کم صلاحیت والی مشینوں اور بڑے ڈیٹا سیٹس پر، یہ آپ کے ایکسل کو سست کر سکتا ہے۔ اس صورت میں، آپ کو ایک ڈائنامک نامی رینج بنانے کے لیے INDEX فارمولہ بہتر طور پر استعمال کرنا چاہیے۔
ایکسل میں دو جہتی ڈائنامک رینج کیسے بنائیں
دو جہتی نامی رینج بنانے کے لیے، جہاں نہ صرف قطاروں کی تعداد بلکہ کالموں کی تعداد بھی متحرک ہے، INDEX COUNTA فارمولے کی درج ذیل ترمیم کا استعمال کریں:
first_cell:INDEX($1:$1048576, COUNTA( first_column)، COUNTA( first_row)))اس فارمولے میں، آخری غیر خالی قطار اور آخری غیر خالی کالم ( row_num ) حاصل کرنے کے لیے آپ کے پاس دو COUNTA فنکشنز ہیں۔ اور بالترتیب INDEX فنکشن کے column_num دلائل)۔ ارے دلیل میں، آپ پوری ورک شیٹ کو فیڈ کرتے ہیں (ایکسل 2016 - 2007 میں 1048576 قطاریں؛ ایکسل 2003 اور اس سے کم میں 65535 قطاریں)۔
اور اب،آئیے اپنے ڈیٹا سیٹ کے لیے ایک اور متحرک رینج کی وضاحت کرتے ہیں: سیلز نام کی رینج جس میں 3 ماہ (جنوری تا مارچ) کے سیلز کے اعداد و شمار شامل ہوتے ہیں اور جب آپ نئی آئٹمز (قطاریں) یا مہینے (کالم) کو شامل کرتے ہیں تو خود بخود ایڈجسٹ ہوجاتا ہے۔ ٹیبل۔
کالم B، قطار 2 سے شروع ہونے والے سیلز ڈیٹا کے ساتھ، فارمولہ درج ذیل شکل اختیار کرتا ہے:
=$B$2:INDEX($1:$1048576,COUNTA($B:$B),COUNTA($2:$2))
یہ یقینی بنانے کے لیے کہ آپ کی ڈائنامک رینج اسی طرح کام کرتی ہے جیسا کہ اسے سمجھا جاتا ہے، شیٹ پر کہیں درج ذیل فارمولے درج کریں:
=SUM(sales)
=SUM(B2:D5)
جیسا کہ آپ نیچے اسکرین شاٹ میں دیکھ سکتے ہیں۔ ، دونوں فارمولے ایک ہی کل واپس کرتے ہیں۔ فرق اس وقت ظاہر ہوتا ہے جب آپ ٹیبل میں نئی اندراجات شامل کرتے ہیں: پہلا فارمولہ (متحرک نام کی حد کے ساتھ) خود بخود اپ ڈیٹ ہوجائے گا، جب کہ دوسرے کو ہر تبدیلی کے ساتھ دستی طور پر اپ ڈیٹ کرنا ہوگا۔ اس سے بہت فرق پڑتا ہے، اوہ؟
ایکسل فارمولوں میں متحرک نام کی رینجز کو کیسے استعمال کیا جائے
اس ٹیوٹوریل کے پچھلے حصوں میں، آپ پہلے ہی دیکھ چکے ہیں کچھ سادہ فارمولے جو متحرک حدود استعمال کرتے ہیں۔ اب، آئیے کچھ اور بامعنی لانے کی کوشش کریں جو ایکسل ڈائنامک نامی رینج کی اصل قدر کو ظاہر کرے۔
اس مثال کے لیے، ہم کلاسک INDEX MATCH فارمولہ لینے جا رہے ہیں جو Excel میں Vlookup کو انجام دیتا ہے:
INDEX ( return_range, MATCH ( lookup_value, lookup_range, 0))
…اور دیکھیں کہ ہم کیسے کے استعمال سے فارمولے کو مزید طاقتور بنا سکتے ہیں۔dynamic name ranges.
جیسا کہ اوپر اسکرین شاٹ میں دکھایا گیا ہے، ہم ایک ڈیش بورڈ بنانے کی کوشش کر رہے ہیں، جہاں صارف H1 میں آئٹم کا نام درج کرتا ہے اور H2 میں اس آئٹم کی کل فروخت حاصل کرتا ہے۔ مظاہرے کے مقاصد کے لیے بنائی گئی ہماری نمونہ جدول میں صرف 4 آئٹمز ہیں، لیکن آپ کی حقیقی زندگی کی شیٹس میں سینکڑوں اور یہاں تک کہ ہزاروں قطاریں ہو سکتی ہیں۔ مزید برآں، روزانہ کی بنیاد پر نئی اشیاء شامل کی جا سکتی ہیں، اس لیے حوالہ جات کا استعمال ایک آپشن نہیں ہے، کیونکہ آپ کو فارمولے کو بار بار اپ ڈیٹ کرنا پڑے گا۔ میں اس کے لیے بہت سست ہوں! :)
فارمولے کو خود بخود پھیلنے پر مجبور کرنے کے لیے، ہم 3 ناموں کی وضاحت کرنے جا رہے ہیں: 2 متحرک رینجز، اور 1 جامد نامی سیل:
Lookup_range: =$A$2:INDEX($ A:$A, COUNTA($A:$A))
Return_range: =$E$2:INDEX($E:$E, COUNTA($E:$E))
Lookup_value: =$H$1
نوٹ۔ Excel تمام حوالوں میں موجودہ شیٹ کا نام شامل کر دے گا، لہذا نام بنانے سے پہلے اپنے ماخذ ڈیٹا کے ساتھ شیٹ کو کھولنا یقینی بنائیں۔
اب، فارمولہ کو H1 میں ٹائپ کرنا شروع کریں۔ جب بات پہلی دلیل کی ہو تو، اس نام کے چند حروف ٹائپ کریں جسے آپ استعمال کرنا چاہتے ہیں، اور Excel تمام دستیاب مماثل نام دکھائے گا۔ مناسب نام پر ڈبل کلک کریں، اور Excel اسے فوراً فارمولے میں داخل کر دے گا:
مکمل فارمولا اس طرح نظر آتا ہے:
=INDEX(Return_range, MATCH(Lookup_value, Lookup_range, 0))
اور بالکل کام کرتا ہے!
جیسے ہی آپ ٹیبل پر نئے ریکارڈز شامل کریں گے، وہ آپ کے حسابات میںایک بار، آپ کو فارمولے میں ایک بھی تبدیلی کیے بغیر! اور اگر آپ کو فارمولے کو کسی اور ایکسل فائل میں پورٹ کرنے کی ضرورت ہو تو، منزل کی ورک بک میں بس وہی نام بنائیں، فارمولے کو کاپی/پیسٹ کریں، اور اسے فوری طور پر کام کرنے کی اجازت دیں۔
ٹپ۔ فارمولوں کو زیادہ پائیدار بنانے کے علاوہ، ڈائنامک رینجز ڈائنامک ڈراپ ڈاؤن فہرستیں بنانے کے لیے کارآمد ہیں۔
اس طرح آپ Excel میں ڈائنامک رینجز بناتے اور استعمال کرتے ہیں۔ اس ٹیوٹوریل میں زیر بحث فارمولوں کو قریب سے دیکھنے کے لیے، آپ کو ہماری نمونہ Excel Dynamic Named Range Workbook ڈاؤن لوڈ کرنے کے لیے خوش آمدید کہتے ہیں۔ میں پڑھنے کے لیے آپ کا شکریہ ادا کرتا ہوں اور امید کرتا ہوں کہ آپ کو اگلے ہفتے ہمارے بلاگ پر ملوں گا!