समझिए
लेसन 1 वाली प्रोडक्ट शीट (A1:E6) ही इस्तेमाल करेंगे।
1. INDEX — "इस पोज़िशन पर जो आइटम है, वह दो"
=INDEX(range, row_num, [col_num])
=INDEX(B2:B6, 3) → Chair (B2:B6 में तीसरा आइटम)
=INDEX(A2:E6, 4, 4) → 12000 (रो 4, कॉलम 4 = Desk की कीमत)
2. MATCH — "यह आइटम किस पोज़िशन पर है?"
=MATCH(lookup_value, lookup_array, [match_type])
=MATCH("Chair", B2:B6, 0) → 3
0 का मतलब बिल्कुल सही मैच। सामान्य लुकअप में हमेशा यही लिखें। (अनुमानित मैच लेसन 4 में।)
3. दोनों को जोड़ें
MATCH पोज़िशन ढूँढता है, INDEX उस पोज़िशन की वैल्यू देता है:
=INDEX(D2:D6, MATCH("P103", A2:A6, 0)) → 4500
ऐसे पढ़ें: "Price कॉलम से वह आइटम दो जो उस रो में है जहाँ P103 है।"
4. बाईं ओर लुकअप — VLOOKUP की सीमा 1 का हल
"Desk" का Code (Code, Product के बाईं ओर है):
=INDEX(A2:A6, MATCH("Desk", B2:B6, 0)) → P104
खोजने वाला कॉलम और लौटाने वाला कॉलम अलग-अलग हैं, इसलिए दिशा मायने नहीं रखती।
5. कॉलम जुड़ने पर भी सुरक्षित — सीमा 2 का हल
यहाँ कोई कॉलम नंबर नहीं है। D2:D6 एक रेफ़रेंस है, तो कॉलम जुड़ने पर Excel उसे अपने आप E2:E6 कर देता है। फ़ॉर्मूला कीमत ही लौटाता रहता है।
6. Two-way लुकअप (रो + कॉलम)
H1 में कोड (जैसे P102) और H2 में हेडिंग (जैसे Stock) डालें:
=INDEX(A2:E6, MATCH(H1, A2:A6, 0), MATCH(H2, A1:E1, 0)) → 40
पहला MATCH रो ढूँढता है, दूसरा कॉलम। H2 को "Price" करें तो 18000 मिलेगा — फ़ॉर्मूला बदलने की ज़रूरत नहीं।
7. न मिलने पर
=IFNA(INDEX(D2:D6, MATCH(H1, A2:A6, 0)), "Code not found")
याद रखने वाले नियम
INDEX की रेंज और MATCH की रेंज एक ही साइज़ की हों और एक ही रो से शुरू हों (D2:D6 के साथ A2:A6, A1:A6 नहीं)। वरना गलत रो की वैल्यू मिलेगी। और कॉपी करने से पहले रेंज को $ से लॉक करें।
आम गलतियाँ
MATCH में 0 भूल जाना (डिफ़ॉल्ट 1 = अनुमानित, बिना क्रम वाले डेटा पर गलत नतीजा)। रेंज के साइज़ अलग होना। INDEX में पूरी टेबल देकर सिर्फ़ रो नंबर देना और उलझना कि कौन-सा कॉलम आया।