فہرست کا خانہ
اس ٹیوٹوریل میں، آپ کو متعدد فارمولے کی مثالیں ملیں گی جو ایکسل میں INDEX کے سب سے زیادہ موثر استعمال کو ظاہر کرتی ہیں۔
ایکسل کے تمام فنکشنز جن کی طاقت کو اکثر کم سمجھا جاتا ہے اور کم استعمال کیا جاتا ہے، INDEX یقینی طور پر ٹاپ 10 میں کہیں درجے پر آئے گا۔ اس دوران، یہ فنکشن سمارٹ، کومل اور ورسٹائل ہے۔
تو، Excel میں INDEX فنکشن کیا ہے؟ بنیادی طور پر، ایک INDEX فارمولہ دی گئی صف یا رینج کے اندر سے سیل کا حوالہ واپس کرتا ہے۔ دوسرے الفاظ میں، آپ INDEX کا استعمال اس وقت کرتے ہیں جب آپ کسی رینج میں کسی عنصر کی پوزیشن کو جانتے ہوں (یا اس کا حساب لگا سکتے ہوں) اور آپ اس عنصر کی اصل قیمت حاصل کرنا چاہتے ہیں۔
یہ تھوڑا سا معمولی لگ سکتا ہے، لیکن ایک بار آپ کو INDEX فنکشن کی حقیقی صلاحیت کا احساس ہے، یہ آپ کے ورک شیٹس میں ڈیٹا کا حساب کرنے، تجزیہ کرنے اور پیش کرنے کے طریقے میں اہم تبدیلیاں کر سکتا ہے۔
Excel INDEX فنکشن - نحو اور بنیادی استعمال
ایکسل میں INDEX فنکشن کے دو ورژن ہیں - اری فارم اور ریفرنس فارم۔ دونوں شکلیں Microsoft Excel 365 - 2003 کے تمام ورژنز میں استعمال کی جا سکتی ہیں۔
INDEX array form
INDEX ارے فارم قطار کی بنیاد پر کسی حد یا سرنی میں کسی خاص عنصر کی قدر لوٹاتا ہے۔ اور کالم نمبر جو آپ بتاتے ہیں۔
INDEX(array, row_num, [column_num])- array - سیلز کی ایک رینج ہے، جس کا نام رینج، یا ٹیبل ہے۔ <10 row_num - صف میں وہ قطار نمبر ہے جس سے کوئی قدر واپس کرنا ہے۔ اگر row_num ہےایک قدر واپس کرتا ہے، لیکن اس فارمولے میں، حوالہ آپریٹر (:) اسے حوالہ واپس کرنے پر مجبور کرتا ہے)۔ اور چونکہ $A$1 ہمارا نقطہ آغاز ہے، فارمولے کا حتمی نتیجہ رینج $A$1:$A$9 ہے۔
- بائیں vlookup کے ساتھ کوئی مسئلہ نہیں۔
- لکھ اپ ویلیو سائز کی کوئی حد نہیں۔
- کوئی چھانٹی نہیں ہے۔ درکار ہے (تقریبا مماثلت کے ساتھ VLOOKUP کے لیے تلاش کے کالم کو صعودی ترتیب میں ترتیب دینے کی ضرورت ہوتی ہے)۔
- آپ اپ ڈیٹ کیے بغیر ٹیبل میں کالم داخل کرنے اور ہٹانے کے لیے آزاد ہیں۔ہر منسلک فارمولہ۔
- اور آخری لیکن کم از کم، INDEX/MATCH آپ کے ایکسل کو سست نہیں کرتا ہے جیسا کہ متعدد Vlookups کرتے ہیں۔
- column_num - وہ کالم نمبر ہے جس سے کوئی قدر لوٹانا ہے۔ اگر column_num کو چھوڑ دیا جاتا ہے، row_num کی ضرورت ہوتی ہے۔
مندرجہ ذیل اسکرین شاٹ یہ ظاہر کرتا ہے کہ آپ اس طرح کے انڈیکس فارمولے کو متحرک ڈراپ بنانے کے لیے کیسے استعمال کرسکتے ہیں۔ نیچے کی فہرست۔
ٹپ۔ متحرک طور پر اپ ڈیٹ کردہ ڈراپ ڈاؤن فہرست بنانے کا سب سے آسان طریقہ یہ ہے کہ ٹیبل کی بنیاد پر نام کی فہرست بنائی جائے۔ اس صورت میں، آپ کو کسی پیچیدہ فارمولے کی ضرورت نہیں ہوگی کیونکہ ایکسل ٹیبلز فی سی ڈائنامک رینجز ہیں۔
آپ انحصار ڈراپ ڈاؤن فہرستیں بنانے کے لیے INDEX فنکشن کا استعمال بھی کر سکتے ہیں اور درج ذیل ٹیوٹوریل میں ان مراحل کی وضاحت کی گئی ہے: ایکسل میں کیسکیڈنگ ڈراپ ڈاؤن فہرست بنانا۔
5۔ INDEX / MATCH کے ساتھ طاقتور Vlookups
عمودی تلاش کرنا - یہ وہ جگہ ہے جہاں INDEX فنکشن واقعی چمکتا ہے۔ اگر آپ نے کبھی Excel VLOOKUP فنکشن کو استعمال کرنے کی کوشش کی ہے، تو آپ اس کی متعدد حدود سے بخوبی واقف ہوں گے، جیسے کہ کالم سے قدروں کو تلاش کرنے کے کالم کے بائیں طرف کھینچنے میں ناکامی یا تلاش کی قدر کے لیے 255 حروف کی حد۔
The INDEX / MATCH رابطہ کئی لحاظ سے VLOOKUP سے برتر ہے:
آپ INDEX/MATCH کو درج ذیل طریقے سے استعمال کرتے ہیں۔ :
=INDEX ( سے ایک قدر واپس کرنے کے لیے کالم، (MATCH ( لوک اپ ویلیو ، کالم برائے تلاش ، 0))کے لیے مثال کے طور پر، اگر ہم اپنے سورس ٹیبل کو پلٹائیں تاکہ سیارے کا نام سب سے دائیں کالم بن جائے، INDEX/MATCH فارمولہ پھر بھی بائیں ہاتھ کے کالم سے بغیر کسی رکاوٹ کے مماثل قدر حاصل کرتا ہے۔
<0مزید نکات اور فارمولے کی مثال کے لیے، براہ کرم ایکسل انڈیکس / میچ ٹیوٹوریل دیکھیں۔
6. رینجز کی فہرست سے 1 رینج حاصل کرنے کے لیے ایکسل انڈیکس فارمولہ
ایکسل میں INDEX فنکشن کا ایک اور زبردست اور طاقتور استعمال رینج کی فہرست سے ایک رینج حاصل کرنے کی صلاحیت ہے۔
فرض کریں، آپ کے پاس کئی فہرستیں ہیں جن میں سے ہر ایک میں آئٹمز کی مختلف تعداد ہے۔ مجھ پر یقین کریں یا نہیں، آپ کسی ایک فارمولے کے ساتھ کسی بھی منتخب رینج میں اوسط کا حساب لگا سکتے ہیں یا قدروں کو جمع کر سکتے ہیں۔
سب سے پہلے، آپ تخلیق e ہر فہرست کے لیے ایک نامزد رینج؛ اس مثال میں اسے PlanetsD اور MoonsD رہنے دیں:
مجھے امید ہے کہ اوپر کی تصویر حدود کے ناموں کے پیچھے دلیل کی وضاحت کرتی ہے۔ : ) BTW، Moons جدول مکمل نہیں ہے، ہمارے نظام شمسی میں 176 معروف قدرتی چاند ہیں، اس وقت اکیلے مشتری کے پاس 63 ہیں، اور گنتی جاری ہے۔ اس مثال کے لیے، میں نے بے ترتیب 11 کا انتخاب کیا، ٹھیک ہے... شاید بالکل بے ترتیب نہیں -سب سے خوبصورت ناموں کے ساتھ چاند : )
براہ کرم ہمارے INDEX فارمولے پر واپسی کے لیے معافی مانگیں۔ یہ فرض کرتے ہوئے کہ PlanetsD آپ کی رینج 1 ہے اور MoonsD رینج 2 ہے، اور سیل B1 وہ جگہ ہے جہاں آپ رینج نمبر لگاتے ہیں، آپ درج ذیل انڈیکس فارمولے کو استعمال کر سکتے ہیں منتخب کردہ نام کی حد:
=AVERAGE(INDEX((PlanetsD, MoonsD), , , B1))
براہ کرم اس بات پر توجہ دیں کہ اب ہم INDEX فنکشن کا حوالہ فارم استعمال کر رہے ہیں، اور آخری دلیل (رقبہ_num) میں نمبر فارمولہ بتاتا ہے کہ کس حد تک منتخب کریں۔
نیچے دیے گئے اسکرین شاٹ میں، area_num (سیل B1) کو 2 پر سیٹ کیا گیا ہے، اس لیے فارمولہ Moons کے اوسط قطر کا حساب لگاتا ہے کیونکہ رینج MoonsD دوسرے نمبر پر آتی ہے۔ حوالہ دلیل میں۔
اگر آپ متعدد فہرستوں کے ساتھ کام کرتے ہیں اور متعلقہ نمبروں کو یاد رکھنے کی زحمت نہیں کرنا چاہتے ہیں، تو آپ اپنے لیے ایسا کرنے کے لیے نیسٹڈ IF فنکشن استعمال کر سکتے ہیں۔ :
=AVERAGE(INDEX((PlanetsD, MoonsD), , , IF(B1="planets", 1, IF(B1="moons", 2))))
IF فنکشن میں، آپ کچھ سادہ اور یاد رکھنے میں آسان فہرست کے نام استعمال کرتے ہیں جو آپ چاہتے ہیں کہ آپ کے صارفین نمبروں کے بجائے سیل B1 میں ٹائپ کریں۔ براہ کرم اسے ذہن میں رکھیں، فارمولے کے صحیح طریقے سے کام کرنے کے لیے، B1 میں متن بالکل ویسا ہی ہونا چاہیے (کیس غیر حساس) جیسا کہ IF کے پیرامیٹرز میں ہے، بصورت دیگر آپ کا انڈیکس فارمولہ #VALUE کی غلطی کو پھینک دے گا۔
فارمولے کو اور بھی زیادہ صارف دوست بنانے کے لیے، آپ ڈیٹا کی توثیق کا استعمال کرتے ہوئے پہلے سے طے شدہ ناموں کے ساتھ ڈراپ ڈاؤن فہرست بنا سکتے ہیں تاکہ املا کی غلطیوں کو روکا جا سکے۔غلط پرنٹس:
آخر میں، اپنے INDEX فارمولے کو بالکل پرفیکٹ بنانے کے لیے، آپ اسے IFERROR فنکشن میں بند کر سکتے ہیں جو صارف کو ڈراپ ڈاؤن فہرست سے ایک آئٹم منتخب کرنے کا اشارہ کرے گا۔ اگر ابھی تک کوئی انتخاب نہیں کیا گیا ہے:
=IFERROR(AVERAGE(INDEX((PlanetsD, MoonsD), , , IF(B1="planet", 1, IF(B1="moon", 2)))), "Please select the list!")
اس طرح آپ Excel میں INDEX فارمولے استعمال کرتے ہیں۔ مجھے امید ہے کہ ان مثالوں نے آپ کو اپنی ورک شیٹس میں INDEX فنکشن کی صلاحیت کو بروئے کار لانے کا ایک طریقہ دکھایا ہے۔ پڑھنے کے لیے آپ کا شکریہ!
چھوڑ دیا گیا، column_num درکار ہے۔ مثال کے طور پر، فارمولہ =INDEX(A1:D6, 4, 3)
4th قطار اور 3rd کالم کی رینج A1:D6 کے انقطاع پر قیمت لوٹاتا ہے، جو سیل C4 میں قدر ہے۔ .
یہ اندازہ حاصل کرنے کے لیے کہ INDEX فارمولہ حقیقی ڈیٹا پر کیسے کام کرتا ہے، براہ کرم درج ذیل مثال پر ایک نظر ڈالیں:
قطار داخل کرنے کے بجائے اور فارمولے میں کالم نمبر، آپ زیادہ عالمگیر فارمولہ حاصل کرنے کے لیے سیل حوالہ جات فراہم کر سکتے ہیں: =INDEX($B$2:$D$6, G2, G1)
لہذا، یہ INDEX فارمولہ G2 (row_num) میں بیان کردہ پروڈکٹ نمبر کے چوراہے پر بالکل آئٹمز کی تعداد لوٹاتا ہے۔ ) اور ہفتہ نمبر سیل G1 میں درج کیا گیا (کالم_num)۔
ٹپ۔ ارے آرگیومینٹ میں متعلقہ حوالہ جات (B2:D6) کی بجائے مطلق حوالہ جات ($B$2:$D$6) کا استعمال فارمولے کو دوسرے سیلز میں کاپی کرنا آسان بناتا ہے۔ متبادل کے طور پر، آپ رینج کو ٹیبل میں تبدیل کر سکتے ہیں ( Ctrl + T ) اور ٹیبل کے نام سے اس کا حوالہ دے سکتے ہیں۔
INDEX ارے فارم - یاد رکھنے کی چیزیں
- اگر سرنی دلیل صرف ایک قطار یا کالم پر مشتمل ہے، تو آپ متعلقہ row_num یا column_num دلیل کی وضاحت کرسکتے ہیں یا نہیں کرسکتے ہیں۔
- اگر ارے آرگیومینٹ میں ایک سے زیادہ قطاریں شامل ہیں اور row_num کو چھوڑ دیا گیا ہے یا 0 پر سیٹ کیا گیا ہے تو INDEX فنکشن پورے کالم کی ایک صف لوٹاتا ہے۔ اسی طرح، اگر صف میں ایک سے زیادہ شامل ہیں۔کالم اور column_num دلیل کو چھوڑ دیا جاتا ہے یا 0 پر سیٹ کیا جاتا ہے، INDEX فارمولہ پوری قطار کو لوٹاتا ہے۔ یہاں ایک فارمولہ کی مثال ہے جو اس طرز عمل کو ظاہر کرتی ہے۔
- رو_num اور column_num کے دلائل کو صف کے اندر موجود سیل کا حوالہ دینا چاہیے۔ بصورت دیگر، INDEX فارمولہ #REF! error۔
INDEX حوالہ فارم
ایکسل INDEX فنکشن کا حوالہ فارم مخصوص قطار اور کالم کے چوراہے پر سیل حوالہ لوٹاتا ہے۔
INDEX(حوالہ، row_num , [column_num], [area_num] )- حوالہ - ایک یا متعدد رینجز ہیں۔ 0 ایک قطار یا کالم، متعلقہ row_num یا column_num دلیل اختیاری ہے۔
مثال کے طور پر، فارمولہ =INDEX((A2:D3, A5:D7), 3, 4, 2)
سیل D7 کی قدر لوٹاتا ہے، جو کہدوسری قطار (A5:D7) میں تیسری قطار اور چوتھے کالم کا انٹرسیکشن۔
INDEX حوالہ فارم - یاد رکھنے کی چیزیں
- اگر row_num یا column_num argument صفر (0) پر سیٹ ہے، ایک INDEX فارمولہ بالترتیب پورے کالم یا قطار کا حوالہ واپس کرتا ہے۔
- اگر row_num اور column_num دونوں کو چھوڑ دیا جاتا ہے، تو INDEX فنکشن اس علاقے کو لوٹاتا ہے جس میں مخصوص کیا گیا ہے the area_num argument.
- تمام _num آرگیومینٹس (row_num، column_num اور area_num) کو حوالہ کے اندر ایک سیل کا حوالہ دینا چاہیے؛ بصورت دیگر، INDEX فارمولہ #REF! غلطی۔
انڈیکس کے دونوں فارمولے جن پر ہم نے اب تک بات کی ہے وہ بہت آسان ہیں اور صرف تصور کو واضح کرتے ہیں۔ آپ کے حقیقی فارمولے اس سے کہیں زیادہ پیچیدہ ہونے کا امکان ہے، تو آئیے ایکسل میں INDEX کے چند انتہائی موثر استعمالات کو دریافت کریں۔
ایکسل میں INDEX فنکشن کا استعمال کیسے کریں - فارمولے کی مثالیں
شاید وہاں خود ایکسل INDEX کے بہت سے عملی استعمال نہیں ہیں، لیکن دوسرے فنکشنز جیسے MATCH یا COUNTA کے ساتھ مل کر، یہ بہت طاقتور فارمولے بنا سکتا ہے۔
ماخذ ڈیٹا
ہمارے تمام INDEX فارمولے (آخری کے علاوہ)، ہم ذیل میں ڈیٹا استعمال کریں گے۔ سہولت کے مقاصد کے لیے، اسے SourceData کے نام سے ایک ٹیبل میں ترتیب دیا گیا ہے۔
ٹیبلز یا نامزد رینجز کا استعمال فارمولے بنا سکتا ہے۔ تھوڑا طویل، لیکن یہ انہیں نمایاں طور پر زیادہ لچکدار اور بہتر پڑھنے کے قابل بھی بناتا ہے۔ کسی بھی INDEX کو ایڈجسٹ کرنے کے لیےآپ کی ورک شیٹس کے فارمولے کے لیے، آپ کو صرف ایک نام میں ترمیم کرنے کی ضرورت ہے، اور یہ مکمل طور پر ایک طویل فارمولہ کی طوالت کو پورا کرتا ہے۔
یقیناً، اگر آپ چاہیں تو آپ کو معمول کی حدود استعمال کرنے سے کوئی چیز نہیں روکتی ہے۔ اس صورت میں، آپ صرف ٹیبل کا نام SourceData کو مناسب حد کے حوالے سے بدل دیتے ہیں۔
1۔ فہرست سے Nth آئٹم حاصل کرنا
یہ INDEX فنکشن کا بنیادی استعمال اور بنانے کا آسان ترین فارمولا ہے۔ فہرست سے کسی خاص آئٹم کو لانے کے لیے، آپ صرف =INDEX(range, n)
لکھتے ہیں جہاں رینج سیلز کی ایک رینج یا ایک نامزد رینج ہے، اور n اس آئٹم کی پوزیشن ہے جسے آپ حاصل کرنا چاہتے ہیں۔
ایکسل ٹیبلز کے ساتھ کام کرتے وقت، آپ ماؤس کا استعمال کرتے ہوئے کالم کو منتخب کرسکتے ہیں اور ایکسل کالم کا نام ٹیبل کے نام کے ساتھ فارمولے میں کھینچ لے گا:
دی گئی قطار اور کالم کے چوراہے پر سیل کی قدر حاصل کرنے کے لیے، آپ صرف اسی فرق کے ساتھ ایک ہی نقطہ نظر استعمال کرتے ہیں جو آپ دونوں کی وضاحت کرتے ہیں - قطار نمبر اور کالم نمبر۔ درحقیقت، جب ہم نے INDEX array فارم پر بات کی تھی تو آپ نے پہلے ہی ایسا فارمولہ دیکھا تھا۔
اور یہاں ایک اور مثال ہے۔ ہمارے سیمپل ٹیبل میں، نظام شمسی کا دوسرا سب سے بڑا سیارہ تلاش کرنے کے لیے، آپ ٹیبل کو قطر کالم کے مطابق ترتیب دیں، اور درج ذیل INDEX فارمولہ استعمال کریں:
=INDEX(SourceData, 2, 3)
Array
ٹیبل کا نام ہے، یا رینج کا حوالہ ہے، اس مثال میں SourceData ۔ Row_num
2 ہے کیونکہ آپ دوسری چیز تلاش کر رہے ہیں۔فہرست میں، جو 2nd میں ہے Column_num
3 ہے کیونکہ قطر ٹیبل میں تیسرا کالم ہے۔اگر آپ سیارے کو واپس کرنا چاہتے ہیں قطر کے بجائے نام، کالم_num کو 1 میں تبدیل کریں۔ اور قدرتی طور پر، آپ اپنے فارمولے کو مزید ورسٹائل بنانے کے لیے row_num اور/یا column_num کے دلائل میں سیل حوالہ استعمال کرسکتے ہیں، جیسا کہ ذیل کے اسکرین شاٹ میں دکھایا گیا ہے:
2۔ ایک قطار یا کالم میں تمام اقدار حاصل کرنا
ایک سیل کو بازیافت کرنے کے علاوہ، INDEX فنکشن پوری قطار یا کالم سے قدروں کی ایک صف کو واپس کرنے کے قابل ہے۔ . کسی خاص کالم سے تمام قدریں حاصل کرنے کے لیے، آپ کو row_num کی دلیل کو ختم کرنا ہوگا یا اسے 0 پر سیٹ کرنا ہوگا۔ اسی طرح، پوری قطار کو حاصل کرنے کے لیے، آپ کو کالم_num میں خالی قدر یا 0 کو پاس کرنا ہوگا۔
اس طرح کے INDEX فارمولے مشکل سے ہوسکتے ہیں۔ اپنے طور پر استعمال کیا جائے، کیونکہ ایکسل ایک سیل میں فارمولے کے ذریعے واپس کی گئی قدروں کی صف میں فٹ ہونے سے قاصر ہے، اور آپ کو #VALUE! اس کے بجائے غلطی. تاہم، اگر آپ INDEX کو دوسرے افعال کے ساتھ استعمال کرتے ہیں، جیسے کہ SUM یا AVERAGE، تو آپ کو شاندار نتائج حاصل ہوں گے۔
مثال کے طور پر، آپ نظام شمسی میں سیارے کے اوسط درجہ حرارت کا حساب لگانے کے لیے درج ذیل فارمولے کا استعمال کر سکتے ہیں:
=AVERAGE(INDEX(SourceData, , 4))
مندرجہ بالا فارمولے میں، کالم_num کی دلیل 4 ہے کیونکہ ہمارے ٹیبل کے چوتھے کالم میں درجہ حرارت ہے۔ row_num پیرامیٹر کو چھوڑ دیا گیا ہے۔
اسی طرح، آپ کم از کم اور زیادہ سے زیادہ تلاش کر سکتے ہیںدرجہ حرارت:
=MAX(INDEX(SourceData, , 4))
=MIN(INDEX(SourceData, , 4))
اور کل سیارے کی کمیت کا حساب لگائیں (ماس ٹیبل میں دوسرا کالم ہے):
=SUM(INDEX(SourceData, , 2))
عملی نقطہ نظر سے، مندرجہ بالا فارمولے میں INDEX فنکشن ضرورت سے زیادہ ہے۔ آپ آسانی سے =AVERAGE(range)
یا =SUM(range)
لکھ سکتے ہیں اور وہی نتائج حاصل کر سکتے ہیں۔
حقیقی ڈیٹا کے ساتھ کام کرتے وقت، یہ خصوصیت زیادہ پیچیدہ فارمولوں کے حصے کے طور پر مددگار ثابت ہو سکتی ہے جو آپ ڈیٹا کے تجزیہ کے لیے استعمال کرتے ہیں۔
3۔ INDEX کو دوسرے فنکشنز کے ساتھ استعمال کرنا (SUM, AVERAGE, MAX, MIN)
پچھلی مثالوں سے، آپ شاید اس تاثر میں ہوں کہ INDEX فارمولہ اقدار کو لوٹاتا ہے، لیکن حقیقت یہ ہے کہ یہ ایک حوالہ لوٹاتا ہے۔ قدر پر مشتمل سیل میں۔ اور یہ مثال ایکسل INDEX فنکشن کی اصل نوعیت کو ظاہر کرتی ہے۔
چونکہ INDEX فارمولے کا نتیجہ ایک حوالہ ہوتا ہے، اس لیے ہم اسے دوسرے فنکشنز میں ایک متحرک رینج بنانے کے لیے استعمال کر سکتے ہیں۔ مبہم لگتا ہے؟ مندرجہ ذیل فارمولہ سب کچھ واضح کر دے گا۔
فرض کریں کہ آپ کے پاس ایک فارمولہ =AVERAGE(A1:A10)
ہے جو سیلز A1:A10 میں اوسط قدریں لوٹاتا ہے۔ رینج کو براہ راست فارمولے میں لکھنے کے بجائے، آپ A1 یا A10، یا دونوں کو INDEX فنکشنز کے ساتھ بدل سکتے ہیں، اس طرح:
=AVERAGE(A1 : INDEX(A1:A20,10))
مذکورہ بالا دونوں فارمولے ایک جیسے فراہم کریں گے۔ نتیجہ کیونکہ INDEX فنکشن سیل A10 کا حوالہ بھی دیتا ہے (row_num 10 پر سیٹ ہے، col_num کو چھوڑ دیا گیا ہے)۔ فرق یہ ہے کہ رینج AVERAGE/INDEX فارمولہ متحرک ہے،اور ایک بار جب آپ INDEX میں row_num دلیل کو تبدیل کرتے ہیں، تو AVERAGE فنکشن کے ذریعے پروسیس کی جانے والی رینج بدل جائے گی اور فارمولہ ایک مختلف نتیجہ دے گا۔
بظاہر، INDEX فارمولے کا روٹ حد سے زیادہ پیچیدہ معلوم ہوتا ہے، لیکن اس میں عملی اطلاقات ہوتے ہیں۔ جیسا کہ درج ذیل مثالوں میں دکھایا گیا ہے۔
مثال 1. فہرست میں سرفہرست N آئٹمز کی اوسط کا حساب لگائیں
آئیے کہتے ہیں کہ آپ ہمارے نظام میں N سب سے بڑے سیاروں کا اوسط قطر جاننا چاہتے ہیں۔ . لہذا، آپ ٹیبل کو قطر کالم کے لحاظ سے سب سے بڑے سے چھوٹے تک ترتیب دیں، اور درج ذیل اوسط/انڈیکس فارمولہ استعمال کریں:
=AVERAGE(C5 : INDEX(SourceData[Diameter], B1))
مثال 2۔ مخصوص دو آئٹمز کے درمیان آئٹمز کا مجموعہ
اگر آپ اپنے فارمولے میں اپر باؤنڈ اور لوئر باؤنڈ آئٹمز کی وضاحت کرنا چاہتے ہیں، تو آپ کو پہلی اور آخری آئٹم جو آپ چاہتے ہیں۔
مثال کے طور پر، درج ذیل فارمولہ سیل B1 اور B2 میں متعین کردہ دو آئٹمز کے درمیان Diameter کالم میں اقدار کا مجموعہ لوٹاتا ہے:
=SUM(INDEX(SourceData[Diameter],B1) : INDEX(SourceData[Diameter], B2))
4۔ متحرک رینجز اور ڈراپ ڈاؤن فہرستیں بنانے کے لیے INDEX فارمولہ
جیسا کہ یہ اکثر ہوتا ہے، جب آپ ورک شیٹ میں ڈیٹا کو ترتیب دینا شروع کرتے ہیں، تو ہو سکتا ہے آپ کو معلوم نہ ہو کہ آپ کے پاس آخر کار کتنی اندراجات ہوں گی۔ ہمارے سیاروں کی میز کا معاملہ ایسا نہیں ہے، جو بظاہر مکمل ہے، لیکن کون جانتا ہے...
ویسے بھی، اگر آپ کے پاس کسی کالم میں آئٹمز کی تعداد بدل رہی ہے، تو A1 سے A تک کہیں۔ n ،آپ ایک متحرک نام کی حد بنانا چاہیں گے جس میں ڈیٹا والے تمام سیل شامل ہوں۔ اس پر، آپ چاہتے ہیں کہ رینج خود بخود ایڈجسٹ ہو جائے کیونکہ آپ نئے آئٹمز شامل کرتے ہیں یا کچھ موجودہ کو حذف کرتے ہیں۔ مثال کے طور پر، اگر آپ کے پاس فی الحال 10 آئٹمز ہیں، تو آپ کی نامزد کردہ رینج A1:A10 ہے۔ اگر آپ ایک نیا اندراج شامل کرتے ہیں تو، نامزد کردہ رینج خود بخود A1:A11 تک پھیل جاتی ہے، اور اگر آپ اپنا خیال بدلتے ہیں اور اس نئے شامل کردہ ڈیٹا کو حذف کرتے ہیں، تو رینج خود بخود A1:A10 پر واپس آجاتی ہے۔
اس کا بنیادی فائدہ نقطہ نظر یہ ہے کہ آپ کو اپنی ورک بک میں تمام فارمولوں کو مسلسل اپ ڈیٹ کرنے کی ضرورت نہیں ہے تاکہ یہ یقینی بنایا جا سکے کہ وہ درست رینجز کا حوالہ دیتے ہیں۔
متحرک رینج کی وضاحت کرنے کا ایک طریقہ Excel OFFSET فنکشن کا استعمال کرنا ہے:
=OFFSET(Sheet_Name!$A$1, 0, 0, COUNTA(Sheet_Name!$A:$A), 1)
ایک اور ممکنہ حل یہ ہے کہ ایکسل انڈیکس کو COUNTA کے ساتھ استعمال کیا جائے:
=Sheet_Name!$A$1:INDEX(Sheet_Name!$A:$A, COUNTA(Sheet_Name!$A:$A))
دونوں فارمولوں میں، A1 وہ سیل ہے جس میں فہرست کی پہلی آئٹم اور تیار کردہ ڈائنامک رینج ہے۔ دونوں فارمولوں سے یکساں ہوں گے۔
فرق نقطہ نظر میں ہے۔ جب کہ OFFSET فنکشن نقطہ آغاز سے قطاروں اور/یا کالموں کی ایک خاص تعداد کے ذریعے منتقل ہوتا ہے، INDEX کسی خاص قطار اور کالم کے چوراہے پر ایک سیل تلاش کرتا ہے۔ COUNTA فنکشن، جو دونوں فارمولوں میں استعمال ہوتا ہے، دلچسپی کے کالم میں غیر خالی خلیوں کی تعداد حاصل کرتا ہے۔
اس مثال میں، کالم A میں 9 غیر خالی سیل ہیں، اس لیے COUNTA 9 لوٹاتا ہے۔ نتیجتاً، INDEX $A$9 لوٹاتا ہے، جو کہ کالم A میں آخری استعمال شدہ سیل ہے (عام طور پر INDEX