बड़ी मात्रा में डेटा के साथ काम करते समय और एक साथ कई फ़िल्टर सेट करने की आवश्यकता होती है, उन्नत फ़िल्टरिंग एक्सेल . में काम मे आता है। इसे प्रतियों को हटाकर आपके डेटा को साफ करने के लिए भी लागू किया जा सकता है। उन्नत फ़िल्टर लागू करते समय , VBA कोड निष्पादित करना बहुत आसान है। इस ट्यूटोरियल में, हम आपको दिखाएंगे कि कैसे लागू करें VBA उन्नत फ़िल्टर Excel . में अनेक मानदंड श्रेणी के लिए ।
Excel में एक श्रेणी में एकाधिक मानदंड वाले VBA उन्नत फ़िल्टर के लिए 5 प्रभावी तरीके
नीचे दिए गए अनुभागों में, हम 5 . पर चर्चा करेंगे VBA उन्नत फ़िल्टर का उपयोग करने के तरीके कई मानदंडों के लिए। सबसे पहले, आपको VBA उन्नत फ़िल्टर . के सिंटैक्स को जानने की आवश्यकता हो सकती है ।
VBA उन्नत फ़िल्टर सिंटैक्स:
- उन्नत फ़िल्टर: एक श्रेणी वस्तु को संदर्भित करता है। आप अपनी सीमा निर्धारित कर सकते हैं जहाँ आप फ़िल्टर लागू करना चाहते हैं।
- कार्रवाई: एक आवश्यक तर्क है जिसमें दो विकल्प हैं, xlFilterInPlace या xlFilterCopy . xlFilterInPlace डेटासेट के स्थान पर मान को फ़िल्टर करने के लिए उपयोग किया जाता है। xlFilterCopy किसी अन्य वांछित स्थान पर फ़िल्टर मान प्राप्त करने के लिए उपयोग किया जाता है।
- मानदंड श्रेणी: उस मानदंड का प्रतिनिधित्व करता है जिसके लिए मान को फ़िल्टर किया जाएगा।
- CopyToRange: वह स्थान है जहां आप अपने फ़िल्टर परिणाम सहेजेंगे।
- अद्वितीय: एक वैकल्पिक तर्क है। सत्य . का प्रयोग करें केवल अद्वितीय मानों को फ़िल्टर करने का तर्क। अन्यथा, डिफ़ॉल्ट रूप से, इसे गलत . माना जाता है ।
नीचे दी गई छवि में, उन सभी फ़िल्टरों को लागू करने के लिए एक नमूना डेटा सेट प्रदान किया गया है जिन्हें हम निष्पादित करना चाहते हैं।
<एच3>1. Excel में किसी श्रेणी में OR मानदंड के लिए VBA उन्नत फ़िल्टर लागू करें
पहली विधि में, हम OR . लागू करेंगे VBA उन्नत फ़िल्टर . का उपयोग करने वाले मानदंड . मान लें, हम उत्पाद नाम कुकी . के लिए डेटा फ़िल्टर करना चाहते हैं और चॉकलेट . या . लागू करने के लिए मानदंड, आपको मान को विभिन्न पंक्तियों में रखना चाहिए। कार्य करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण 1:
- दबाएं Alt + F11 VBA मैक्रो . खोलने के लिए ।
- सम्मिलित करें पर क्लिक करें।
- मॉड्यूल चुनें।
चरण 2:
- फिर, निम्न VBA चिपकाएं OR. . लागू करने के लिए कोड
Sub Apply_VBA_Advanced_Filter_for_OR_Criteria()
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of datase range and criteria range
Set Dataset_Rng = Sheets("Sheet1").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet1").Range("B14:E16")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng
End Sub
<मजबूत>
चरण 3:
- फिर, प्रोग्राम को सेव करें और F5 . दबाएं चलाने के लिए।
- इसलिए, आपको नीचे दिए गए चित्र में दिखाए अनुसार फ़िल्टर किए गए परिणाम मिलेंगे।
नोट्स। प्रक्रिया को उलटने के लिए या सभी फ़िल्टर पेस्ट को हटाने के लिए और VBA . चलाएं कार्यक्रम।
Sub Remove_All_Filter()
On Error Resume Next
'command to remove all the filter to show the previous dataset
ActiveSheet.ShowAllData
End Sub
- परिणामस्वरूप, आपको अपने डेटा सेट का पिछला संस्करण प्राप्त होगा।
और पढ़ें:मानदंड के साथ उन्नत फ़िल्टर के एक्सेल VBA उदाहरण (6 मानदंड)
<एच3>2. एक्सेल में एक श्रेणी में AND मानदंड के लिए VBA उन्नत फ़िल्टर निष्पादित करेंपिछली पद्धति के समान, अब हम VBA . प्रदर्शन करेंगे और . के लिए उन्नत फ़िल्टर मानदंड। मान लें कि हम $0.65 . की कीमत वाली कुकी जानना चाहते हैं जैसा कि नीचे स्क्रीनशॉट में दिखाया गया है। या . लागू करने के लिए मानदंड, आपको मान को अलग-अलग कॉलम में रखना चाहिए। और . लागू करने के लिए मानदंड, नीचे दिए गए निर्देशों का पालन करें।
चरण 1:
- VBA मैक्रो खोलने के लिए , Alt . दबाएं + F11
- VBA मैक्रो खोलने के बाद , निम्न VBA चिपकाएं नए मॉड्यूल में कोड।
Sub Apply_VBA_Advanced_Filter_for_AND_Criteria()
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of dataset range and criteria range
Set Dataset_Rng = Sheets("Sheet2").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet2").Range("B14:E15")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng
End Sub
चरण 2:
- प्रेस F5 प्रोग्राम को सेव करने के बाद उसे चलाने के लिए।
- अंत में, फ़िल्टर किए गए परिणाम प्राप्त करें।
और पढ़ें: एक्सेल में उन्नत फ़िल्टर के साथ डेटा को किसी अन्य शीट पर कॉपी करने के लिए वीबीए
<एच3>3. Excel में किसी श्रेणी में OR के साथ AND मानदंड के लिए VBA उन्नत फ़िल्टर का उपयोग करेंआप या . भी लागू कर सकते हैं और और मानदंड दोनों संयोजन में। उदाहरण के लिए, आप कुकी . के लिए मान प्राप्त करना चाहते हैं या चॉकलेट , लेकिन कुकी के लिए, एक और मानदंड कीमत है $0.65 आवेदन किया जाएगा। इसे करने के लिए नीचे दी गई प्रक्रियाओं का पालन करें।
चरण 1:
- निम्न चिपकाएं VBA VBA मैक्रो . खोलने के बाद कोड ।
Sub Apply_VBA_Advanced_Filter_for_OR_with_AND_Criteria()
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of dataset range and criteria range
Set Dataset_Rng = Sheets("Sheet3").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet3").Range("B14:E16")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng
End Sub
चरण 2:
- फिर, पहले F5 . दबाकर प्रोग्राम को सेव करें इसे चलाने के लिए।
- परिणामस्वरूप, आपको कुछ निश्चित और . के साथ मान मिलेंगे और या.
और पढ़ें:एक्सेल में एक कॉलम में कई मानदंडों के आधार पर उन्नत फ़िल्टर लागू करें
समान रीडिंग:
- Excel में कई मानदंडों के साथ उन्नत फ़िल्टर (15 उपयुक्त उदाहरण)
- डायनामिक उन्नत फ़िल्टर एक्सेल (VBA और मैक्रो)
- VBA में उन्नत फ़िल्टर का उपयोग कैसे करें (एक चरण-दर-चरण दिशानिर्देश)
- Excel में मानदंड श्रेणी के साथ उन्नत फ़िल्टर (18 अनुप्रयोग)
- Excel उन्नत फ़िल्टर काम नहीं कर रहा है (2 कारण और समाधान)
इसके अलावा, यदि आपके डेटा सेट में डुप्लीकेट हैं, तो आप फ़िल्टर करते समय उन्हें हटा सकते हैं। हम अद्वितीय . जोड़ देंगे सच . का तर्क केवल अद्वितीय मान प्राप्त करने और डुप्लिकेट को हटाने के लिए। उल्लिखित निर्देशों का पालन करें।
चरण 1:
- सबसे पहले, VBA खोलें Alt . दबाकर मैक्रो + F11.
- निम्न चिपकाएं VBA नए मॉड्यूल में कोड।
Sub Apply_VBA_Advanced_Filter_for_Unique_Values()
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of dataset range and criteria range
Set Dataset_Rng = Sheets("Sheet4").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet4").Range("B14:E16")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng, Unique:=True
End Sub
चरण 2:
- फिर, F5 press दबाएं सेव करने के बाद प्रोग्राम चलाने के लिए।
- इसलिए, आप केवल अनन्य के लिए मान प्राप्त करेंगे।
और पढ़ें:केवल Excel में अद्वितीय रिकॉर्ड के लिए उन्नत फ़िल्टर का उपयोग कैसे करें
5. सशर्त मामले के लिए VBA उन्नत फ़िल्टर निष्पादित करें
पिछली विधियों के अलावा, आप फ़ार्मुलों के साथ शर्तें भी लागू कर सकते हैं। उदाहरण के लिए, हम कुल मूल्य . खोजना चाहते हैं जो $100 . से अधिक हैं . इसे पूरा करने के लिए, बस चरणों का पालन करें।
चरण 1:
- सबसे पहले, VBA मैक्रो को खोलने के लिए , Alt . दबाएं + F11 ।
- नया मॉड्यूल चुनें और निम्न VBA कोड चिपकाएं:।
Sub Apply_VBA_Advanced_Filter_for_Formula()
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of dataset range and criteria range
Set Dataset_Rng = Sheets("Sheet5").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet5").Range("B14:E15")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng
End Sub
चरण 2:
- दूसरा, प्रोग्राम को सेव करें और F5 . दबाएं परिणाम देखने के लिए बटन।
नोट्स। इसके अतिरिक्त, आप xlFilterCopy को लागू करके एक अनुकूल स्थान में परिणाम प्राप्त कर सकते हैं, चाहे नई श्रेणी में या नई कार्यपत्रक में गतिविधि। बस, VBA . पेस्ट करें Sheet6 . में परिणाम प्राप्त करने के लिए कोड और उन्हें चलाएँ श्रेणी में B4:E11 ।
'Declare Variable for dataset range and for criteria range
Dim Dataset_Rng As Range
Dim Criteria_Rng As Range
'Set the location and range of dataset range and criteria range
Set Dataset_Rng = Sheets("Sheet5").Range("B4:E11")
Set Criteria_Rng = Sheets("Sheet5").Range("B14:E15")
'Apply Advanced Filter to filter the dataset using the criteria
Dataset_Rng.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Criteria_Rng, CopyToRange:=Sheets("Sheet6").Range("B4:E11")
End Sub
- परिणामस्वरूप, एक नई वर्कशीट में अंतिम परिणाम देखें ‘Sheet6’ ।
और पढ़ें:यदि मानदंड श्रेणी में एक्सेल में टेक्स्ट है तो उन्नत फ़िल्टर का उपयोग कैसे करें
निष्कर्ष
संक्षेप में, मुझे आशा है कि अब आप समझ गए होंगे कि VBA . का उपयोग कैसे करें Excel . में उन्नत फ़िल्टर एकाधिक मानदंड श्रेणियों को फ़िल्टर करने के लिए। इन सभी विधियों का उपयोग आपके डेटा के साथ सिखाने और अभ्यास करने के लिए किया जाना चाहिए। अभ्यास पुस्तिका को देखें और जो आपने सीखा है उसका उपयोग करें। आपके महत्वपूर्ण समर्थन के कारण, हम इस तरह के सेमिनारों को प्रस्तुत करना जारी रखने के लिए प्रेरित हैं।
यदि आपके कोई प्रश्न हैं, तो कृपया हमसे संपर्क करने में संकोच न करें। कृपया हमें बताएं कि आप नीचे टिप्पणी अनुभाग में क्या सोचते हैं।
महामहिम कर्मचारी आपकी पूछताछ का जल्द से जल्द जवाब देंगे।
हमारे साथ रहें और सीखते रहें।
संबंधित लेख
- Excel उन्नत फ़िल्टर [एकाधिक कॉलम और मानदंड, फ़ॉर्मूला का उपयोग करना और वाइल्डकार्ड के साथ]
- Excel में रिक्त कक्षों को बाहर करने के लिए उन्नत फ़िल्टर का उपयोग कैसे करें (3 आसान ट्रिक्स)
- Excel VBA:एक श्रेणी में कई मानदंडों के साथ उन्नत फ़िल्टर (5 तरीके)
- Excel में किसी अन्य स्थान पर कॉपी करने के लिए उन्नत फ़िल्टर कैसे लागू करें