वीबीए: एक शीट को एकाधिक कॉलमों के आधार पर कैसे क्रमबद्ध करें
आप वीबीए का उपयोग करके एक्सेल शीट को एकाधिक कॉलम द्वारा सॉर्ट करने के लिए निम्नलिखित मूल वाक्यविन्यास का उपयोग कर सकते हैं:
Sub SortMultipleColumns()
Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, _
Key2:=Range(" B1 "), Order2:=xlDescending, _
Header:=xlYes
End Sub
यह विशेष उदाहरण श्रेणी A1:B11 में कोशिकाओं को पहले स्तंभ A में मानों के आधार पर आरोही क्रम में क्रमबद्ध करता है, फिर स्तंभ B में मानों के आधार पर अवरोही क्रम में क्रमबद्ध करता है।
ध्यान दें कि हेडर:=xlहाँ निर्दिष्ट करता है कि पहली पंक्ति को हेडर लाइन के रूप में माना जाना चाहिए।
निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।
उदाहरण: वीबीए का उपयोग करके एक एक्सेल शीट को कई कॉलमों के आधार पर क्रमबद्ध करें
मान लीजिए कि हमारे पास एक्सेल में निम्नलिखित डेटासेट है जिसमें विभिन्न बास्केटबॉल खिलाड़ियों के बारे में जानकारी है:
मान लीजिए हम डेटासेट को निम्नलिखित तरीके से क्रमबद्ध करना चाहते हैं:
- सबसे पहले, टीम कॉलम में मानों को आरोही क्रम (ए से ज़ेड) में क्रमबद्ध करें।
- इसके बाद, पॉइंट कॉलम में मानों को अवरोही क्रम में (सबसे बड़े से सबसे छोटे) क्रम में क्रमबद्ध करें।
ऐसा करने के लिए हम निम्नलिखित मैक्रो बना सकते हैं:
Sub SortMultipleColumns()
Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, _
Key2:=Range(" B1 "), Order2:=xlDescending, _
Header:=xlYes
End Sub
जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित आउटपुट प्राप्त होता है:
पंक्तियों को अब टीम के नाम के अनुसार आरोही क्रम में और अंकों के अनुसार अवरोही क्रम में क्रमबद्ध किया गया है।
नोट #1 : इस उदाहरण में, हमने दो स्तंभों पर क्रमबद्ध किया है। हालाँकि, आप जितनी चाहें उतनी कुंजियाँ निर्दिष्ट कर सकते हैं और अधिक कॉलम भी सॉर्ट कर सकते हैं।
नोट #2 : आप वीबीए सॉर्ट विधि का पूरा दस्तावेज़ यहां पा सकते हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि वीबीए में अन्य सामान्य कार्य कैसे करें:
वीबीए: AVERAGEIF और AVERAGEIFS फ़ंक्शन कैसे लिखें
वीबीए: SUMIF और SUMIFS फ़ंक्शन कैसे लिखें
VBA: COUNTIF और COUNTIFS फ़ंक्शंस कैसे लिखें