एक्सेलमधील अनेक निकषांवर आधारित VBA इंडेक्स मॅच (3 पद्धती)

  • ह्याचा प्रसार करा
Hugh West

जेव्हा आमच्याकडे मोठ्या प्रमाणात डेटा असतो तेव्हा काहीवेळा डेटासेटमधून कोणताही विशिष्ट डेटा काढणे कठीण होते. Excel च्या INDEX आणि MATCH फंक्शन्ससह एकत्रितपणे मोठ्या डेटासेटमध्ये देखील कोणत्याही प्रकारचा डेटा पुनर्प्राप्त करू शकतो. VBA ची अंमलबजावणी करणे ही Excel मध्ये कोणतेही ऑपरेशन चालवण्यासाठी सर्वात प्रभावी, जलद आणि सुरक्षित पद्धत आहे. या लेखात, आम्ही तुम्हाला एक्सेलमध्ये VBA मॅक्रो सह एकाधिक निकषांवर आधारित INDEX MATCH कसे कार्यान्वित करावे यावरील ३ वेगवेगळ्या पद्धती दाखवू.

डाउनलोड करा. कार्यपुस्तिका

तुम्ही येथून विनामूल्य सराव एक्सेल वर्कबुक डाउनलोड करू शकता.

VBA इंडेक्स मॅच एकाधिक निकषांवर आधारित.xlsm

<4 एक्सेलमधील एकाधिक निकषांवर आधारित VBA इंडेक्स मॅचसह 3 पद्धती

पुढील विभागांमध्ये, आम्ही तुम्हाला श्रेणीसाठी अनेक निकषांवर आधारित इंडेक्स मॅच कसे करावे ते दाखवू. 2>, विशिष्ट निवडीसाठी आणि टेबलसाठी Excel मध्ये VBA सह.

वरील आमच्याकडे हा लेख फॉलो करेल असा डेटासेट आहे. आमच्याकडे डेटासेटमध्ये प्रत्येक विद्यार्थ्याचे विद्यार्थ्याचे नाव , विद्यार्थी आयडी, आणि परीक्षेचे गुण आहेत. आम्ही इतर दोन स्तंभांमधील अटींच्या आधारे एका स्तंभात राहणारा ठराविक निकाल काढू.

निकष - 1: एक्सेलमध्ये एकाधिक (दोन) डायमेन्शनल लुकअपसाठी इंडेक्स मॅचसह VBA एम्बेड करा

खालील प्रतिमा विचारात घ्या. आम्ही एका विशिष्ट विद्यार्थ्याचे नाव “ एज” सेलमध्ये संग्रहित केले आहेG4 ; आणि ज्या स्तंभात आपण परिणाम , परीक्षेचे गुण शोधणार आहोत, तो सेल G5 मध्ये संग्रहित आहे. आम्ही परीक्षेतील गुण स्तंभात शोधू आणि सेल G6 मध्ये मिळालेले गुण संग्रहित करू.

<0

लुकअप करण्याच्या चरणांचा परिणाम VBA सह एक्सेलमध्ये INDEX आणि MATCH सह द्वि-आयामी अॅरे होतो खाली दिलेले आहेत.

चरण:

  • सुरुवातीला, तुमच्या कीबोर्डवर Alt + F11 दाबा किंवा येथे जा टॅब विकासक -> Visual Basic उघडण्यासाठी Visual Basic Editor .

  • पुढे, पॉप-अप कोड विंडोमध्ये, मेनू बार, घाला -> मॉड्यूल .

  • नंतर, खालील कोड कॉपी करा आणि कोडमध्ये पेस्ट करा विंडो.
6627

तुमचा कोड आता रन करण्यासाठी तयार आहे.

  • आता, तुमच्यावर F5 दाबा कीबोर्ड किंवा मेनू बारमधून चालवा -> निवडा. Sub/UserForm चालवा. मॅक्रो रन करण्यासाठी तुम्ही सब-मेनू बारमधील स्मॉल रन आयकॉन वर क्लिक करू शकता.

कोड कार्यान्वित केल्यानंतर, निकाल पाहण्यासाठी खालील gif पहा.

परिणामी, मार्क्स जे “ एज” मिळाले परीक्षा, 67 , सेल G7 मध्ये पुनर्प्राप्त केली आहे.

VBA कोड स्पष्टीकरण

3324

वर्कशीटचे व्हेरिएबल परिभाषित करणे.

2365

वर्कशीटचे नाव साठवा. आमच्या शीटचे नाव आहे “टू डायमेंशन”, तुम्ही प्रदान करावेतुमच्या स्प्रेडशीटनुसार नाव.

2293

कोडचा हा तुकडा लुकअप श्रेणी म्हणून C5:D14 श्रेणी निवडतो. नंतर सेलमध्ये G4 श्रेणी B5:B14 मध्ये संग्रहित केलेली जुळणी शोधा आणि सेल G5 श्रेणी मध्ये संग्रहित केलेली जुळणी शोधा. C4:D4 आणि सेल G6 मध्ये निकाल द्या.

अधिक वाचा: तारीख श्रेणीसाठी एकाधिक निकषांसह INDEX जुळणी कशी वापरावी

निकष – 2: वापरकर्ता-परिभाषित फंक्शन (UDF) सह INDEX द्वारे मॅच व्हॅल्यू शोधण्यासाठी मॅक्रो लागू करा

तुम्ही डेटासेटमधून जुळलेली मूल्ये काढू शकता वापरकर्ता-परिभाषित कार्य (UDF) . खालील प्रतिमेवरून, आम्ही काय करणार आहोत, आम्ही एका विशिष्ट विद्यार्थ्याचा विद्यार्थी आयडी आणि परीक्षेचे गुण उत्तीर्ण करू आणि फंक्शन आपल्याला नाव<देईल. 2> त्या विशिष्ट विद्यार्थ्याचे.

ते कसे मिळवायचे ते पाहूया VBA सह विद्यार्थी नाव “फिन” साठी.

चरण:

  • आधी दाखवल्याप्रमाणे, विकसक टॅब आणि वरून Visual Basic Editor उघडा कोड विंडोमध्ये एक मॉड्यूल घाला.
  • नंतर, कोड विंडोमध्ये, खालील कोड कॉपी करा आणि पेस्ट करा .
4116

  • हा कोड चालवू नका, सेव्ह करा .
  • आता, स्वारस्य असलेल्या वर्कशीटवर परत जा . तुम्हाला परिणाम संचयित करायचा आहे असा कोणताही सेल निवडा . आमच्या बाबतीत, ते सेल F5 आहे.
  • त्या सेलमध्ये, लिहा UDF तुम्हीकोडमध्ये ( MatchByIndex ) तयार केले आहे आणि फंक्शनच्या कंसात विशिष्ट विद्यार्थ्याचा विद्यार्थी आयडी आणि परीक्षेतील गुण उत्तीर्ण करा .

म्हणून आम्ही त्याच्या आयडी (105) आणि मार्क्स (84) वरून “ फिन” हे नाव काढण्याचा प्रयत्न करत आहोत, त्यामुळे आमच्या केससाठी सूत्र बनते,<3 =MatchByIndex(105,84)

  • नंतर, एंटर दाबा.

पुढील प्रतिमा पहा.

सेल F5 मध्ये, आम्ही " फिन"<2 हे नाव यशस्वीरित्या पुनर्प्राप्त केले आहे> फक्त त्याचा आयडी आणि गुण आम्ही VBA कोडमध्ये तयार केलेल्या फंक्शनमध्ये पास करून.

VBA कोड स्पष्टीकरण

3716

नवीन फंक्शन तयार करणे आणि त्यात व्हेरिएबल्स पास करणे. तुम्ही फंक्शनला कोणतेही नाव परिभाषित करू शकता.

3227

आमची पंक्ती पंक्ती क्रमांक 4 पासून सुरू होते. तुमचा डेटासेट ज्यापासून सुरू होतो तो पंक्ती क्रमांक तुम्हाला प्रदान करणे आवश्यक आहे.

9407

व्हेरिएबल परिभाषित करणे.

5333

प्रथम, ज्या सोबत काम करायचे आहे ते वर्कशीट परिभाषित करा. आमच्या शीटचे नाव “UDF” आहे, तुम्ही तुमच्या स्प्रेडशीटनुसार नाव द्यावे. नंतर आम्ही परिभाषित केलेल्या पहिल्या पंक्तीपासून शेवटच्या पंक्तीपर्यंत C:D श्रेणीमध्ये शोधणे सुरू करा.

6845

पहिल्या पंक्तीपासून शेवटच्या पंक्तीपर्यंत पुनरावृत्ती सुरू करा. फंक्शनच्या आत पास होणारी पहिली व्हॅल्यू C कॉलममध्ये आली आणि फंक्शनमध्ये पास होणारी दुसरी व्हॅल्यू D कॉलममध्ये आली तर ते परत येईल. द B स्तंभातून जुळवा. अन्यथा, फंक्शनमधून बाहेर पडा, सर्व विधाने समाप्त करा आणि पुढील ओळीवर जा.

3445

अंमलबजावणी करताना मागील अट पूर्ण न झाल्यास, "डेटा सापडला नाही" संदेश परत येईल आणि कोड फंक्शन सोडेल.

अधिक वाचा: एक्सेलमधील आंशिक मजकूरासाठी एकाधिक निकषांसह INDEX-MATCH (2 मार्ग)

निकष – 3: एक्सेलमधील एकाधिक डेटासह टेबलमधून मॅच व्हॅल्यू परत करण्यासाठी VBA लागू करा

या विभागात, आम्ही सारणीमधील अनुक्रमणिकेद्वारे जुळलेले मूल्य कसे परत करायचे ते शिकू. MsgBox मध्ये VBA Excel मध्ये.

आपल्या टेबलमध्ये दाखवलेल्या टेबलमधून गुण कसे काढायचे ते पाहू या. कोडमध्ये नाव आणि आयडी प्रदान करून विशिष्ट विद्यार्थ्याचा डेटासेट ( T सक्षम नाव: TableMatch ). आमच्या केससाठी, नाव आणि आयडी अनुक्रमे फिन आणि 105 असतील.

चरण :

  • सर्वप्रथम, डेव्हलपर टॅबमधून व्हिज्युअल बेसिक एडिटर उघडा आणि इन्सर्ट एक मॉड्यूल कोड विंडोमध्ये.
  • नंतर, खालील कोड कॉपी करा आणि पेस्ट करा कोड विंडोमध्ये.
5939

तुमचा कोड आता चालण्यासाठी तयार आहे.

  • नंतर, हा कोड चालवा आणि परिणामी काय झाले ते पाहण्यासाठी खालील प्रतिमा पहा.

जसे तुम्ही वरील इमेजवरून पाहू शकता, तेथे एक Microsoft Excel पॉप-वर मेसेज बॉक्स तुम्हाला आयडी: 105 आणि नाव: फिन पैकी गुण: 84 दाखवत आहे जो आम्ही कोडमध्ये प्रदान केला आहे.

<7

VBA कोड स्पष्टीकरण

6275

व्हेरिएबल परिभाषित करणे.

6453

शीटचे नाव आणि व्हेरिएबल्समध्ये टेबलचे नाव सेट करणे.

7090

स्टोअरिंग लुकअप व्हॅल्यू आणि शोधण्यासाठी लुकअप कॉलम.

5182

कोडचा हा तुकडा सबस्क्रिप्टच्या सुरुवातीपासून शेवटपर्यंत स्कॅन करतो आणि जर त्याला शोध कॉलममधील परिभाषित आयडी आणि नावाची जुळणी आढळली तर निकाल संग्रहित करा आणि सर्व विधाने बंद करा. तसेच, पुनरावृत्तीमधून बाहेर पडा आणि कोडच्या पुढील भागावर जा.

5405

परिणाम MsgBox मध्ये टाकतो.

अधिक वाचा: लुकअप आणि रिटर्न एक्सेलमधील एका सेलमध्ये एकापेक्षा जास्त मूल्ये एकत्रित केली आहेत

निष्कर्ष

समाप्त करण्यासाठी, या लेखाने तुम्हाला इंडेक्स मॅचवर आधारित 3 वेगवेगळ्या पद्धती दाखवल्या आहेत. अनेक निकषांवर Excel मध्ये VBA मॅक्रो सह. मला आशा आहे की हा लेख तुमच्यासाठी खूप फायदेशीर ठरला आहे. विषयाशी संबंधित कोणतेही प्रश्न मोकळ्या मनाने विचारा.

ह्यू वेस्ट हे एक अत्यंत अनुभवी एक्सेल ट्रेनर आणि विश्लेषक आहेत ज्याचा उद्योगात 10 वर्षांपेक्षा जास्त अनुभव आहे. त्यांनी अकाउंटिंग आणि फायनान्समध्ये बॅचलर डिग्री आणि बिझनेस अॅडमिनिस्ट्रेशनमध्ये पदव्युत्तर पदवी घेतली आहे. ह्यूला शिकवण्याची आवड आहे आणि त्याने एक अद्वितीय शिकवण्याचा दृष्टीकोन विकसित केला आहे ज्याचे अनुसरण करणे आणि समजणे सोपे आहे. एक्सेलच्या त्यांच्या तज्ञ ज्ञानाने जगभरातील हजारो विद्यार्थ्यांना आणि व्यावसायिकांना त्यांची कौशल्ये सुधारण्यास आणि त्यांच्या करिअरमध्ये उत्कृष्ट कामगिरी करण्यास मदत केली आहे. त्याच्या ब्लॉगद्वारे, ह्यू आपले ज्ञान जगासोबत सामायिक करतो, व्यक्ती आणि व्यवसायांना त्यांच्या पूर्ण क्षमतेपर्यंत पोहोचण्यात मदत करण्यासाठी विनामूल्य एक्सेल ट्यूटोरियल आणि ऑनलाइन प्रशिक्षण ऑफर करतो.