वीबीए: एकाधिक मानदंडों के साथ ऑटोफ़िल्टर का उपयोग कैसे करें


आप कई मानदंडों के साथ VBA में ऑटोफ़िल्टर का उपयोग करने के लिए निम्नलिखित विधियों का उपयोग कर सकते हैं:

विधि 1: एक ही कॉलम में एकाधिक मानदंड वाले ऑटोफ़िल्टर का उपयोग करें

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With

End Sub

यह विशेष मैक्रो श्रेणी A1:C11 में सभी पंक्तियों को फ़िल्टर करेगा जहां पहले कॉलम का मान “ए” या “सी” के बराबर है।

विधि 2: एकाधिक कॉलम में एकाधिक मानदंड वाले ऑटोफ़िल्टर का उपयोग करें

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=" A "
    .AutoFilter Field:=2, Criteria1:=" Guard "
End With

End Sub

यह विशेष मैक्रो केवल उन पंक्तियों को दिखाने के लिए श्रेणी A1:C11 को फ़िल्टर करेगा जहां पहला कॉलम “ए” के बराबर है और दूसरा कॉलम “गार्ड” के बराबर है।

निम्नलिखित उदाहरण दिखाते हैं कि एक्सेल में निम्नलिखित डेटा सेट के साथ अभ्यास में इनमें से प्रत्येक विधि का उपयोग कैसे करें:

उदाहरण 1: एक कॉलम में एकाधिक मानदंडों के साथ ऑटोफ़िल्टर का उपयोग करें

मान लीजिए कि हम डेटासेट को केवल उन पंक्तियों को दिखाने के लिए फ़िल्टर करना चाहते हैं जिनका पहला कॉलम “ए” या “सी” के बराबर है।

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

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With

End Sub

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

ध्यान दें कि डेटासेट को केवल “ए” या “सी” के बराबर पहले कॉलम वाली पंक्तियों को दिखाने के लिए फ़िल्टर किया गया है।

ध्यान दें : हमने Array() फ़ंक्शन में केवल दो संभावित मान शामिल किए हैं, लेकिन आप जितना चाहें उतना शामिल करने में संकोच न करें।

उदाहरण 2: अनेक स्तंभों में अनेक मानदंडों के साथ ऑटोफ़िल्टर का उपयोग करें

मान लीजिए कि हम डेटासेट को केवल उन पंक्तियों को दिखाने के लिए फ़िल्टर करना चाहते हैं जहां टीम कॉलम मान ए के बराबर है और स्थिति कॉलम मान गार्ड के बराबर है।

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

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=" A "
    .AutoFilter Field:=2, Criteria1:=" Guard "
End With

End Sub

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

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

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

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

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

वीबीए: पिवट टेबल को कैसे फ़िल्टर करें
वीबीए: फ़िल्टर कैसे साफ़ करें
वीबीए: डुप्लिकेट मान कैसे हटाएं

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

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