सामग्री तालिका
जब हामीसँग ठूलो मात्रामा डाटा हुन्छ तब कहिलेकाहीँ डाटासेटबाट कुनै खास डाटा निकाल्न गाह्रो हुन्छ। एक्सेलको INDEX र MATCH प्रकार्यहरूसँग सँगै ठूलो डेटासेटमा पनि कुनै पनि प्रकारको डेटा पुन: प्राप्त गर्न सक्छ। एक्सेलमा कुनै पनि अपरेशन चलाउनको लागि VBA लागू गर्नु सबैभन्दा प्रभावकारी, छिटो र सुरक्षित तरिका हो। यस लेखमा, हामी तपाईंलाई एक्सेलमा VBA म्याक्रो को साथमा INDEX MATCH धेरै मापदण्डहरूमा आधारित कसरी प्रदर्शन गर्ने भनेर ३ फरक तरिकाहरू देखाउनेछौं।
डाउनलोड गर्नुहोस्। कार्यपुस्तिका
तपाईँ यहाँबाट नि:शुल्क अभ्यास एक्सेल कार्यपुस्तिका डाउनलोड गर्न सक्नुहुन्छ।
VBA INDEX MATCH Multiple Criteria.xlsm मा आधारित<4 एक्सेलमा बहु मापदण्डमा आधारित VBA INDEX MATCH सँग 3 विधिहरू
निम्न खण्डहरूमा, हामी तपाइँलाई कसरी प्रदर्शन गर्ने देखाउनेछौं एक दायराको लागि बहु मापदण्डमा आधारित INDEX MATCH , विशिष्ट चयनको लागि र तालिकाका लागि एक्सेलमा VBA ।
माथि हामीसँग डेटासेट छ जुन यस लेखले पछ्याउनेछ। हामीसँग डेटासेटमा प्रत्येक विद्यार्थीको विद्यार्थीको नाम , विद्यार्थी ID, र परीक्षा अंक छ। हामी अन्य दुई स्तम्भहरूका सर्तहरूको आधारमा एउटा स्तम्भमा रहेको निश्चित परिणाम निकाल्नेछौं।
मापदण्ड – १: एक्सेलमा बहु (दुई) आयामी लुकअपका लागि INDEX MATCH सँग VBA एम्बेड गर्नुहोस्
निम्न छविलाई विचार गर्नुहोस्। हामीले एउटा विशिष्ट विद्यार्थीको नाम “ Edge” Cell मा भण्डारण गरेका छौंG4 ; र हामीले नतिजा मा, परीक्षा अंक खोज्ने स्तम्भ सेल G5 मा भण्डार गरिएको छ। हामी परीक्षा अंकहरू स्तम्भमा खोज्नेछौं र अङ्कहरू भण्डार गर्नेछौं जुन " एज" ले सेल G6 मा पाएको छ।
<0लुकअपका चरणहरूले VBA सँग एक्सेलमा INDEX र MATCH सँग दुई-आयामी एरे परिणाम दिन्छ। तल दिइएको छ।
चरणहरू:
- सुरुमा, आफ्नो किबोर्डमा Alt + F11 थिच्नुहोस् वा मा जानुहोस्। ट्याब विकासकर्ता -> भिजुअल बेसिक खोल्न भिजुअल बेसिक सम्पादक ।
- अर्को, पप-अप कोड विन्डोमा, मेनु पट्टी, घुसाउनुहोस् -> मोड्युल ।
- त्यसपछि, निम्न कोडलाई प्रतिलिपि र पास्ट गर्नुहोस् कोडमा window।
2636
तपाईँको कोड अब चल्नको लागि तयार छ।
- अब, आफ्नो मा F5 थिच्नुहोस् किबोर्ड वा मेनु पट्टीबाट चलाउनुहोस् -> Sub/UserForm चलाउनुहोस्। तपाईले म्याक्रो चलाउनको लागि सब-मेनु पट्टीमा रहेको सानो रन आइकन मा क्लिक गर्न सक्नुहुन्छ।
कोड कार्यान्वयन पछि, नतिजा हेर्न तलको gif हेर्नुहोस्।
नतिजाको रूपमा, मार्क्स जुन " Edge" मा प्राप्त भयो परीक्षा, 67 , सेल G7 मा पुनःप्राप्त गरिएको छ।
VBA कोड स्पष्टीकरण
1147
कार्यपत्रको चर परिभाषित गर्दै।
4539
कार्यपत्रको नाम भण्डार गर्नुहोस्। हाम्रो पानाको नाम "दुई आयाम" हो, तपाईंले प्रदान गर्नुपर्छतपाईंको स्प्रिेडसिट अनुसार नाम।
3164
कोडको यो टुक्राले दायरा C5:D14 लुकअप दायराको रूपमा चयन गर्दछ। त्यसपछि कक्ष G4 दायरा B5:B14 मा भण्डारण गरिएको मिलान खोज्नुहोस् र कक्ष G5 दायरा मा भण्डारण गरिएको मिलान खोज्नुहोस्। C4:D4 र सेल G6 मा नतिजा पास गर्नुहोस्।
थप पढ्नुहोस्: मिति दायराका लागि बहु मापदण्डहरूसँग INDEX MATCH कसरी प्रयोग गर्ने
मापदण्ड - 2: प्रयोगकर्ता-परिभाषित प्रकार्य (UDF) को साथ INDEX द्वारा MATCH मान फेला पार्न म्याक्रो लागू गर्नुहोस्
तपाईले डेटासेटबाट मेल खाने मानहरू निकाल्न सक्नुहुन्छ। प्रयोगकर्ता-परिभाषित प्रकार्य (UDF) । तलको छविबाट, हामी के गर्न जाँदैछौं, हामी निश्चित विद्यार्थीको विद्यार्थी आईडी र परीक्षा अंक पास गर्नेछौं र प्रकार्यले हामीलाई नाम<फाल्नेछ। त्यो विशिष्ट विद्यार्थीको 2 3>
चरणहरू:
- पहिले देखाइए अनुसार, विकासकर्ता ट्याब र बाट भिजुअल बेसिक सम्पादक खोल्नुहोस्। कोड विन्डोमा a मोड्युल घुसाउनुहोस्।
- त्यसपछि, कोड विन्डोमा, प्रतिलिपि निम्न कोड र टाँस्नुहोस् ।
6357
- यो कोड नचलाउनुहोस् , सेभ गर्नुहोस् यो।
- अब, रुचिको कार्यपत्रमा फर्कनुहोस् । कुनै पनि सेल छान्नुहोस् जुन तपाईं परिणाम भण्डार गर्न चाहनुहुन्छ। हाम्रो अवस्थामा, यो सेल F5 हो।
- त्यो सेलमा, लेख्नुहोस् UDF तपाईंभर्खरै कोडमा सिर्जना गरिएको छ ( MatchByIndex ) र प्रकार्यको कोष्ठक भित्र विशिष्ट विद्यार्थीको विद्यार्थी आईडी र परीक्षा अंकहरू पास गर्नुहोस् ।
जस्तै। हामी उसको आईडी (105) र मार्क्स (84) बाट " फिन" नाम निकाल्ने प्रयास गर्दैछौं, त्यसैले हाम्रो केसको लागि सूत्र बन्छ,
=MatchByIndex(105,84)
- त्यसपछि, Enter थिच्नुहोस्।
निम्न छवि हेर्नुहोस्।
24>
सेल F5 मा, हामीले सफलतापूर्वक नाम " फिन"<2 प्राप्त गरेका छौं।> हामीले VBA कोडमा सिर्जना गरेको प्रकार्य भित्र उसको ID र मार्क्स पास गरेर।
VBA कोड व्याख्या
6254
नयाँ प्रकार्य सिर्जना गर्दै र भित्र चरहरू पास गर्दै। तपाईंले प्रकार्यको कुनै पनि नाम परिभाषित गर्न सक्नुहुन्छ।
2644
हाम्रो पङ्क्ति पङ्क्ति नम्बर 4 बाट सुरु हुन्छ। तपाईंले आफ्नो डेटासेटबाट सुरु भएको पङ्क्ति नम्बर प्रदान गर्नुपर्छ।
7727
चरहरू परिभाषित गर्दै।
8469
पहिले, काम गर्ने कार्यपत्र परिभाषित गर्नुहोस्। हाम्रो पानाको नाम "UDF" हो, तपाईंले आफ्नो स्प्रिेडसिट अनुसार नाम प्रदान गर्नुपर्छ। त्यसपछि हामीले अन्तिम पङ्क्तिमा परिभाषित गरेको पहिलो पङ्क्तिबाट C:D दायरामा खोजी सुरु गर्नुहोस्।
5918
पहिलो पङ्क्तिबाट अन्तिम पङ्क्तिमा पुनरावृत्ति सुरु गर्नुहोस्। यदि हामीले प्रकार्य भित्र पास गर्ने पहिलो मान C स्तम्भ भित्र पर्छ र यदि हामीले प्रकार्य भित्र पारित गर्ने दोस्रो मान D स्तम्भ भित्र पर्छ भने, यो फर्किनेछ। द B स्तम्भबाट मिलाउनुहोस्। अन्यथा, प्रकार्यबाट बाहिर निस्कनुहोस्, सबै कथनहरू समाप्त गर्नुहोस्, र अर्को लाइनमा जानुहोस्।
1314
यदि कार्यान्वयन गर्दा अघिल्लो सर्त पूरा भएन भने, "डेटा फेला परेन" सन्देश फर्किनेछ र कोडले प्रकार्य छोड्नेछ।
थप पढ्नुहोस्: एक्सेलमा आंशिक पाठको लागि बहु मापदण्डको साथ INDEX-MATCH (२ तरिकाहरू)
मापदण्ड – ३: एक्सेलमा धेरै डेटा भएको तालिकाबाट MATCH मान फर्काउन VBA लागू गर्नुहोस्
यस खण्डमा, हामी कसरी तालिकाबाट अनुक्रमणिकाहरूद्वारा मिल्दो मान फिर्ता गर्ने भनेर सिक्नेछौँ। MsgBox मा VBA Excel मा।
हाम्रो तालिकामा देखाइएको तालिकाबाट मार्क्स कसरी निकाल्ने हेरौँ। कोड भित्र नाम र ID प्रदान गरेर निश्चित विद्यार्थीको डेटासेट ( T सक्षम नाम: TableMatch )। हाम्रो मामलाको लागि, नाम र आईडी क्रमशः फिन र 105 हुनेछ।
चरणहरू :
- सबैभन्दा पहिले, विकासकर्ता ट्याबबाट भिजुअल बेसिक सम्पादक खोल्नुहोस् र घुसाउनुहोस् एक मोड्युल कोड विन्डोमा।
- त्यसपछि, निम्न कोड प्रतिलिपि र टाँस्नुहोस् कोड विन्डोमा।
5116
तपाईँको कोड अब चलाउनको लागि तयार छ।
- पछि, यो कोड चलाउनुहोस् र नतिजाको रूपमा के भयो भनेर तलको छवि हेर्नुहोस्।
तपाईंले माथिको छविबाट देख्न सक्नुहुन्छ, त्यहाँ माइक्रोसफ्ट एक्सेल पप-माथिको सन्देश बाकसले तपाईंलाई ID: 105 र नाम: Finn को अङ्क: 84 देखाउँछ जुन हामीले कोड भित्र प्रदान गरेका थियौं।
1 खोजी गर्नको लागि लुकअप मानहरू र लुकअप स्तम्भहरू।
6803
कोडको यो टुक्रा सबस्क्रिप्टको सुरुदेखि अन्त्यसम्म स्क्यान हुन्छ र यदि यसले परिभाषित ID र खोज स्तम्भहरूमा नामको मेल फेला पार्छ भने नतिजा भण्डार गर्नुहोस् र सबै कथनहरू बन्द गर्नुहोस्। साथै, पुनरावृत्तिबाट बाहिर निस्कनुहोस् र कोडको अर्को भागमा जानुहोस्।
9236
परिणामलाई MsgBox मा फ्याँक्छ।
थप पढ्नुहोस्: लुकअप र रिटर्न एक्सेलमा एक सेलमा धेरै मानहरू जोडिएको
निष्कर्ष
समापन गर्नको लागि, यस लेखले तपाइँलाई INDEX MATCH आधारित प्रदर्शन गर्ने ३ फरक तरिकाहरू देखाएको छ। धेरै मापदण्डहरूमा एक्सेलमा VBA म्याक्रो । मलाई आशा छ कि यो लेख तपाईलाई धेरै लाभदायक भएको छ। यस विषयमा कुनै पनि प्रश्न सोध्न स्वतन्त्र महसुस गर्नुहोस्।