वीबीए: सूचकांक मिलान का उपयोग कैसे करें


आप VBA में INDEX MATCH करने के लिए निम्नलिखित मूल सिंटैक्स का उपयोग कर सकते हैं:

 SubIndexMatch ()

    Dim i As Integer
    
    ' Perform index match
    For i = 2 To 11
    Cells(i, 5).Value = WorksheetFunction.Index(Range(" A2:A11 "), _
    WorksheetFunction.Match(Cells(i, 4).Value, Range(" B2:B11 "), 0))
    Next i
End Sub

यह विशेष उदाहरण कार्यपत्रक के चौथे स्तंभ के कक्ष 2 से 11 में श्रेणी B2:B11 में मानों की खोज करता है, और फिर कार्यपत्रक के पांचवें स्तंभ में श्रेणी A2:A11 में संबंधित मान लौटाता है।

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: VBA का उपयोग करके एक इंडेक्स मैच निष्पादित करें

मान लीजिए कि हमारे पास एक्सेल में निम्नलिखित डेटासेट है जिसमें बास्केटबॉल खिलाड़ियों के बारे में जानकारी है:

कॉलम डी में प्रत्येक खिलाड़ी के लिए, मान लीजिए कि हम कॉलम ए में उनकी टीम का नाम ढूंढना चाहते हैं, तो कॉलम ई में टीम का नाम लिखें।

ऐसा करने के लिए हम निम्नलिखित मैक्रो बना सकते हैं:

 SubIndexMatch ()

    Dim i As Integer
    
    ' Perform index match
    For i = 2 To 11
    Cells(i, 5).Value = WorksheetFunction.Index(Range(" A2:A11 "), _
    WorksheetFunction.Match(Cells(i, 4).Value, Range(" B2:B11 "), 0))
    Next i
End Sub

जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित आउटपुट प्राप्त होता है:

ध्यान दें कि यह मैक्रो प्रत्येक खिलाड़ी के नाम की खोज करने में सक्षम था और फिर कॉलम ई में उसकी संबंधित टीम का नाम लौटाता था।

ध्यान दें कि फॉर लूप के भीतर, Cells(i,5).value सिंटैक्स निर्दिष्ट करता है कि हम चाहते हैं कि टीम के नाम स्प्रेडशीट के पांचवें कॉलम, यानी कॉलम E में लौटाए जाएं।

यदि हम इस सिंटैक्स को Cells(i,6).value में बदलते हैं तो टीम के नाम स्प्रेडशीट के छठे कॉलम में वापस आ जाएंगे:

 SubIndexMatch ()

    Dim i As Integer
    
    ' Perform index match
    For i = 2 To 11
    Cells(i, 6).Value = WorksheetFunction.Index(Range(" A2:A11 "), _
    WorksheetFunction.Match(Cells(i, 4).Value, Range(" B2:B11 "), 0))
    Next i
End Sub

जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित आउटपुट प्राप्त होता है:

ध्यान दें कि टीम के नाम अब स्प्रेडशीट के छठे कॉलम (कॉलम एफ) में लौटा दिए गए हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि वीबीए में अन्य सामान्य कार्य कैसे करें:

वीबीए: कैसे जांचें कि एक स्ट्रिंग में दूसरी स्ट्रिंग है या नहीं
वीबीए: श्रेणी में पंक्तियों की संख्या कैसे गिनें
VBA: COUNTIF और COUNTIFS फ़ंक्शंस कैसे लिखें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *