विषयसूची
एक्सेल क्रमबद्ध करें और; फ़िल्टर कमांड की सीमा फ़िल्टर डेटा तक सीमित है। लेकिन VBA का उपयोग करके आप अपनी इच्छानुसार डेटा को फ़िल्टर कर सकते हैं एक विस्तृत श्रृंखला में। यह आलेख आपको VBA कोड का उपयोग करने के लिए 8 उपयोगी उदाहरण प्रदान करेगा डेटा को फ़िल्टर करने के लिए एक्सेल में VBA विशद चित्रण के साथ कोड।
अभ्यास कार्यपुस्तिका डाउनलोड करें
आप यहां से नि:शुल्क एक्सेल टेम्पलेट डाउनलोड कर सकते हैं और स्वयं अभ्यास कर सकते हैं।
डेटा फ़िल्टर करने के लिए VBA कोड।xlsm<2
8 उदाहरण एक्सेल में डेटा फ़िल्टर करने के लिए VBA कोड का उपयोग करने के लिए
आइए पहले अपने डेटासेट से परिचित हो जाएं जो कुछ छात्रों के लिंग, स्थिति और उम्र ।
1. एक्सेल में एक टेक्स्ट मानदंड के आधार पर डेटा को फ़िल्टर करने के लिए VBA कोड का उपयोग करें
हमारे पहले उदाहरण में, हम VBA से फ़िल्टर केवल <1 का उपयोग करेंगे>पुरुष
डेटासेट के लिंगकॉलम से छात्र।चरण:
- राइट-क्लिक करें शीट शीर्षक पर।
- फिर संदर्भ मेनू से व्यू कोड चुनें।
जल्द ही उसके बाद, VBA विंडो खुलेगी।
- निम्नलिखित कोड में टाइप करें it-
9411
- बाद में, VBA
मिनिमाइज़ करें कोड ब्रेकडाउन
- यहां, मैंने एक उप प्रक्रिया, Filter_Data_Text() बनाया।
- फिर इसका उपयोग किया श्रेणी संपत्ति हमारे संबंधित शीट का नाम घोषित करने के लिए और श्रेणी
- अगला, मैंने अपनी पसंद के मापदंड का उपयोग करने के लिए ऑटोफ़िल्टर विधि का उपयोग किया जहां फ़ील्ड:=2 का अर्थ है स्तंभ 2 । और Criteria1:=”Male” to Filter data Male.
- उसके बाद मैक्रोज़ डायलॉग बॉक्स खोलें, निम्नानुसार क्लिक करें: डेवलपर > मैक्रोज़।
- मैक्रो नाम का चयन करें जैसा कि कोड में बताया गया है ।
- अंत में, बस रन दबाएं ।
अब देखिए कि हमें केवल छात्रों का डेटा फ़िल्टर करने के बाद ।
और पढ़ें: एक्सेल फ़िल्टर डेटा पर आधारित सेल वैल्यू (6 कुशल तरीके)
2. एक कॉलम में एकाधिक मानदंड वाले डेटा को फ़िल्टर करने के लिए VBA कोड लागू करें
यहां, हम एक कॉलम में एकाधिक मानदंडों के लिए फ़िल्टर करेंगे। डेटासेट के कॉलम नंबर तीन से, हम ग्रेजुएट और स्नातकोत्तर छात्रों के लिए फ़िल्टर करेंगे।
चरण:
- VBA विंडो खोलने के लिए पहले उदाहरण के पहले दो चरणों का पालन करें।
- बाद में, इसमें निम्नलिखित कोड टाइप करें-
3678
- फिर VBA
कोड ब्रेकडाउन
- यहां, मैंने एक उप प्रक्रिया, बनाई फ़िल्टर_वन_कॉलम () । अगला, मैंने द का इस्तेमाल कियामेरी पसंद के मापदंड का उपयोग करने के लिए ऑटोफ़िल्टर विधि जहाँ फ़ील्ड:=3 का अर्थ स्तंभ 3 है। यहां, मानदंड1:=”स्नातक” और मानदंड2:=”स्नातकोत्तर” से फ़िल्टर छात्र की स्थिति ।
- अंत में, मैंने कई मानदंडों के लिए या शर्त फ़िल्टर लागू करने के लिए ऑपरेटर:=xlOr का उपयोग किया।
- इस पर पल, मैक्रोज़ डायलॉग बॉक्स खोलने के लिए पहले उदाहरण से तीसरे चरण का पालन करें।
- बाद में, निर्दिष्ट निर्दिष्ट मैक्रो नाम चुनें और रन दबाएं ।
इसके तुरंत बाद, आपको नीचे दी गई छवि जैसे कई मानदंडों के आधार पर फ़िल्टर की गई पंक्तियां मिलेंगी।
और पढ़ें: एक्सेल में एकाधिक मानदंड फ़िल्टर करें (4 उपयुक्त तरीके)
3. एक्सेल में विभिन्न कॉलमों में एकाधिक मानदंड वाले डेटा को फ़िल्टर करने के लिए VBA कोड लागू करें
अब हम कई मानदंडों के लिए फ़िल्टर करेंगे- पुरुष और स्नातक छात्र।
चरण:
- पहले दो चरणों का पालन करें पहला उदाहरण VBA
- खोलें, बाद में, निम्नलिखित कोड लिखें-
7958
- बाद में कि VBA विंडो को मिनिमाइज़ करें ।
कोड ब्रेकडाउन
- यहां, मैंने एक उप प्रक्रिया, Filter_Different_Columns() बनाया।
- फिर, मैंने के साथ कथन का उपयोग किया एकाधिक कॉलम .
- फिर श्रेणी का उपयोग कियाहमारे संबंधित शीट का नाम और श्रेणी
- की घोषणा करने के लिए इसके बाद, मैंने मानदंड का उपयोग करने के लिए ऑटोफिल्टर विधि का उपयोग किया मेरी पसंद जहाँ Field:=2 का अर्थ स्तंभ 2 और Field:=3 का अर्थ स्तंभ 3 है।
- यहाँ , चयनित मानदंड1:="पुरुष" लिंग स्तंभ के लिए और मानदंड1:="स्नातक" स्थिति स्तंभ के लिए फ़िल्टर के लिए चुना गया डेटा विभिन्न कॉलम से।
- फिर तीसरे चरण का पालन करें पहले उदाहरण से खोलने के लिए मैक्रो डायलॉग बॉक्स ।
- बाद में, चुनें निर्दिष्ट मैक्रो नाम और रन दबाएं । <14
- वीबीए विंडो खोलने के लिए पहले उदाहरण के पहले दो चरणों का पालन करें .
- फिर टाइप करें निम्नलिखित कोड इसमें-
यहां कई मानदंडों का आउटपुट दिया गया है।
और पढ़ें: Excel VBA एकाधिक मानदंड (6 उदाहरण) द्वारा एक ही कॉलम में फ़िल्टर करने के लिए
4. एक्सेल में शीर्ष 3 आइटमों को फ़िल्टर करने के लिए VBA कोड का उपयोग करें
इस उदाहरण में, हम शीर्ष तीन छात्रों को उनकी उम्र के अनुसार फ़िल्टर करेंगे।<3
चरण:
1979
- इसके बाद मिनिमाइज करें VBA विंडो .
कोड ब्रेकडाउन
- यहाँ, मैं एक उप प्रक्रिया, Filter_Top3_Items() बनाया। 1> शीर्ष तीन डेटा ।
- अब पहले उदाहरण से तीसरे चरण का पालन करें को खोलने के लिए मैक्रो डायलॉग बॉक्स ।
- फिर मैक्रो नाम चुनें जैसा कोड में बताया गया है और रन दबाएं । <14
- कब कॉपी और पेस्ट कैसे करें फ़िल्टर एक्सेल में लागू होता है
- एक्सेल में अद्वितीय मूल्यों को कैसे फ़िल्टर करें (8 आसान तरीके)
- वीबीए (दोनों) के साथ एक्सेल में एकाधिक मानदंड फ़िल्टर करें AND और OR प्रकार)
- Excel में टेक्स्ट फ़िल्टर का उपयोग कैसे करें (5 उदाहरण)
- Excel में दिनांक के अनुसार फ़िल्टर कैसे करें (4 त्वरित) तरीके)
- पहले, पहले दो चरणों का पालन करें पहला उदाहरण वीबीए विंडो खोलने के लिए। 12> VBA विंडो को छोटा करें।
- यहां, मैंने एक उप प्रक्रिया, Filter_Top50_Percent() बनाई।
- बाद में, ऑपरेटर:=xlTop10Percent से <1 तक इस्तेमाल> से शीर्ष पचास प्रतिशत को फ़िल्टर करें स्तंभ-4 ।
फिर आपको नीचे दी गई इमेज की तरह आउटपुट मिलेगा-
और पढ़ें: एक्सेल VBA (4 तरीके) का उपयोग करके सेल वैल्यू के आधार पर फ़िल्टर कैसे करें
समान रीडिंग
5. एक्सेल में शीर्ष 50 प्रतिशत को फ़िल्टर करने के लिए VBA कोड का उपयोग करें
आइए VBA कोड का उपयोग छात्रों के शीर्ष पचास प्रतिशत को उनकी उम्र के आधार पर फ़िल्टर करने के लिए करें .
चरण:
कोड ब्रेकडाउन
<11- इस समय, तीसरे चरण का अनुसरण करें से पहले उदाहरण को खोलने के लिए मैक्रोज़ संवाद बॉक्स।
- फिर चुनें निर्दिष्ट मैक्रो नाम और रन दबाएं ।
कुल 7 छात्र थे इसलिए 50 प्रतिशत के लिए, यह लगभग तीन छात्र दिखा रहा है।<3
और पढ़ें: एक्सेल में लाभ प्रतिशत सूत्र का उपयोग कैसे करें (3 उदाहरण)
6 . वाइल्डकार्ड का उपयोग करके डेटा फ़िल्टर करने के लिए VBA कोड लागू करें
हम वाइल्डकार्ड वर्ण-* (तारांकन चिह्न) का उपयोग VBA कोड में एक्सेल में डेटा फ़िल्टर करने के लिए कर सकते हैं। स्थिति कॉलम से, हम केवल उन मानों को फ़िल्टर करेंगे जिनमें 'पोस्ट' शामिल है .
चरण:
- VBA विंडो खोलने के लिए पहले उदाहरण के
- पहले दो चरणों का पालन करें।
- फिर लिखें इसमें निम्न कोड -
4305
- बाद में, VBA विंडो मिनिमाइज करें।
कोड ब्रेकडाउन
- यहां, मैंने एक उप प्रक्रिया, Filter_with_Wildcard()<बनाया 18>।
- फिर रेंज सेट करने के लिए रेंज ("बी 4") का इस्तेमाल किया।
- अगला , इस्तेमाल AutoFilter to Filter in Field:=3 मतलब column 3.
- Criteria1:=”*Post *” से फ़िल्टर वे मान जिनमें 'पोस्ट' है। उदाहरण मैक्रो संवाद खोलने के लिएbox.
- निर्दिष्ट मैक्रो नाम चुनें और रन दबाएं ।
फिर आपको वांछित आउटपुट मिलेगा।
और पढ़ें: एक्सेल में फ़िल्टर कैसे जोड़ें (4 तरीके) )
7. एक्सेल में एक नई शीट में फ़िल्टर किए गए डेटा को कॉपी करने के लिए एक्सेल वीबीए एम्बेड करें
देखें कि मेरे डेटासेट में कुछ फ़िल्टर किए गए डेटा हैं। अब मैं उन्हें VBA का उपयोग करके एक नई शीट में कॉपी करूँगा। ये कोड शीट में ठीक से काम नहीं करेंगे, आपको उन्हें मॉड्यूल में लागू करना होगा।
चरण:
- VBA
- फिर Insert > मॉड्यूल से मॉड्यूल खोलें ।
- अब लिखें निम्नलिखित कोड –
1376
- फिर VBA
<0 मिनिमाइज़ करें कोड ब्रेकडाउन
- यहाँ, मैंने एक उप प्रक्रिया, Copy_Filtered_Data_NewSheet() बनाया।
- उसके बाद घोषित दो-चर- x Rng श्रेणी के रूप में और xWS वर्कशीट के रूप में।
- फिर एक IF कथन का उपयोग किया गया चेक फ़िल्टर्ड
- बाद में, आउटपुट दिखाने के लिए MsgBox का इस्तेमाल किया।
- फिर वर्कशीट ("फ़िल्टर किए गए डेटा को कॉपी करें") का इस्तेमाल किया। .Range फ़िल्टर की गई श्रेणी का चयन करने के लिए और एक नई शीट जोड़ने के लिए Add का उपयोग किया।
- अंत में, Copy Range(“G4”) फ़िल्टर किए गए डेटा को नई शीट में कॉपी कर देगा।
- बाद में, का पालन करेंतीसरा चरण पहले उदाहरण से मैक्रोज़ डायलॉग बॉक्स खोलने के लिए।
- फिर चुनें निर्दिष्ट मैक्रो नाम और रन दबाएं ।
अब देखें कि एक्सेल ने एक नई शीट खोली है और फ़िल्टर की गई पंक्तियों की प्रतिलिपि बनाई है।
और पढ़ें: Excel फ़िल्टर के लिए शॉर्टकट (उदाहरण के साथ 3 त्वरित उपयोग)
8। ड्रॉप डाउन सूची का उपयोग करके डेटा को फ़िल्टर करने के लिए VBA कोड लागू करें
हमारे पिछले उदाहरण में, हम पहले लिंग के लिए एक ड्रॉप-डाउन सूची बनाएंगे, फिर हम डेटा को फ़िल्टर करने के लिए उसका उपयोग करेंगे। उसके लिए, मैंने लिंग मानदंड को दूसरे स्थान पर रखा है और हम सेल D14 में एक ड्रॉप-डाउन सूची बनाएंगे।
चरण:
- सेल D14 चुनें।
- फिर क्लिक करें निम्नानुसार: डेटा > डेटा उपकरण > डेटा सत्यापन > डेटा सत्यापन।
इसके तुरंत बाद, एक डायलॉग बॉक्स खुलेगा।
चुनें सूची अनुमति दें ड्रॉप-डाउन से ।
फिर ओपन आइकन पर क्लिक करें स्रोत बॉक्स से।
अब मानदंड श्रेणी चुनें और एंटर बटन दबाएं ।
- इस समय, बस ओके दबाएं ।
अब हमारी ड्रॉप-डाउन सूची तैयार है।
- अब पहले उदाहरण VBA विंडो खोलने के लिए पहले दो चरणों का पालन करें .
- फिर लिखें निम्नलिखित कोड इसमें-
4761
- फिर VBA को छोटा करेंविंडो .
कोड ब्रेकडाउन
- यहां, मैंने बनाया a निजी उप प्रक्रिया, Worksheet_Change(ByVal लक्ष्य के रूप में सीमा)।
- फिर, मैंने सामान्य से वर्कशीट और घोषणाओं से परिवर्तन का चयन किया।
- फिर स्थान जानने के लिए पता सेट करें।>और मानदंड
- अब बस ड्रॉप-डाउन सूची से मानदंड चुनें और फ़िल्टर सक्रिय हो जाएगा ।
ड्रॉप-डाउन से पुरुष चुनने के बाद फ़िल्टर किया गया आउटपुट यहां दिया गया है।
और पढ़ें: एक्सेल में दूसरी शीट में सूची के अनुसार फ़िल्टर कैसे करें (2 विधियाँ)
अभ्यास अनुभाग
समझाए गए तरीकों का अभ्यास करने के लिए आपको ऊपर दी गई एक्सेल फ़ाइल में एक अभ्यास पत्र मिलेगा।
निष्कर्ष
मुझे आशा है कि ऊपर वर्णित प्रक्रियाएं VBA कोड को फ़िल्टर एक्सेल में डेटा का उपयोग करने के लिए पर्याप्त होंगी। टिप्पणी अनुभाग में बेझिझक कोई भी प्रश्न पूछें और कृपया मुझे प्रतिक्रिया दें।