वीबीए: मूल्यों की सूची को कैसे वर्गीकृत करें


आप VBA का उपयोग करके Excel में मानों की सूची को क्रमबद्ध करने के लिए निम्नलिखित मूल सिंटैक्स का उपयोग कर सकते हैं:

 SubRankValues ()
    Dim i As Integer

    For i = 2 To 11
    Range(" C " & i) = WorksheetFunction.Rank(Range(" B " & i), Range(" B2:B11 "), 0)
    Next i
End Sub

यह विशेष उदाहरण कक्ष B2:B11 में मानों को रैंक करता है और कक्ष C2:C11 में रैंक प्रदर्शित करता है।

0 का अंतिम तर्क निर्दिष्ट करता है कि मानों को आरोही क्रम में क्रमबद्ध किया जाना चाहिए (सबसे बड़ा मान 1 का रैंक प्राप्त करता है, दूसरा सबसे बड़ा मान 2 का रैंक प्राप्त करता है, आदि)।

मानों को अवरोही क्रम में व्यवस्थित करने के लिए, बस 0 को 1 से बदलें।

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

उदाहरण: वीबीए का उपयोग करके मूल्यों को कैसे ऑर्डर करें

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

मान लीजिए हम अंक कॉलम में प्रत्येक मान की रैंक की गणना करना चाहते हैं।

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

 SubRankValues ()
    Dim i As Integer

    For i = 2 To 11
    Range(" C " & i) = WorksheetFunction.Rank(Range(" B " & i), Range(" B2:B11 "), 0)
    Next i
End Sub

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

अंक कॉलम में प्रत्येक मान की रैंकिंग कॉलम सी में प्रदर्शित होती है।

उदाहरण के लिए:

  • 41 अंकों के साथ खिलाड़ी H का अंक मान सबसे अधिक है, इसलिए उसे रैंक 1 प्राप्त होता है।
  • 40 अंकों के साथ खिलाड़ी सी का अंक मूल्य दूसरा सबसे अधिक है, इसलिए उसे रैंक 2 प्राप्त होती है।

और इसी तरह।

अंक कॉलम में मानों को अवरोही क्रम में रैंक करने के लिए, हम रैंक विधि के अंतिम तर्क को 0 से 1 में बदल सकते हैं:

 SubRankValues ()
    Dim i As Integer

    For i = 2 To 11
    Range(" C " & i) = WorksheetFunction.Rank(Range(" B " & i), Range(" B2:B11 "), 1)
    Next i
End Sub

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

अंक कॉलम में प्रत्येक मान की रैंकिंग कॉलम सी में प्रदर्शित होती है।

उदाहरण के लिए:

  • 11 अंकों वाले खिलाड़ी I का अंक मान सबसे कम है, इसलिए उसे रैंक 1 प्राप्त होती है।
  • 13 अंकों के साथ खिलाड़ी E का अंक मान दूसरा सबसे कम है, इसलिए उसे रैंक 2 प्राप्त होती है।

और इसी तरह।

नोट : आप वीबीए रैंक विधि के लिए संपूर्ण दस्तावेज़ यहां पा सकते हैं।

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

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

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

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

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