विषयसूची
आप अपने VBA कोड और एप्लिकेशन में VLOOKUP फ़ंक्शन , चुनें फ़ंक्शन और पीएमटी फ़ंक्शन जैसे अंतर्निहित एक्सेल वर्कशीट फ़ंक्शंस का उपयोग कर सकते हैं भी। वास्तव में, Excel वर्कशीट के अधिकांश कार्यों तक पहुँचा जा सकता है और VBA कोड में उपयोग किया जा सकता है। जैसे INDEX & एक्सेल VBA कोड में MATCH वर्कशीट फ़ंक्शंस।
आप अपने VBA में Excel वर्कशीट फ़ंक्शंस का उपयोग क्यों करना चाहेंगे? कोड ? आप जिस कोड का उपयोग कर रहे हैं उसकी कार्यक्षमता बढ़ाने के लिए। साथ ही, आपको अपने कार्यों के साथ आने की ज़रूरत नहीं है, जब तक कि कार्यक्षमता पहले से मौजूद न हो, जब तक आपको वास्तव में आवश्यकता न हो। आपको मूल रूप से उस फ़ंक्शन तक पहुंचने की ज़रूरत है जिसकी आपको आवश्यकता है क्योंकि यह पहले से ही वहां है और फिर पहिया को फिर से शुरू करने की कोई आवश्यकता नहीं है।
तो, चलिए एक उदाहरण के साथ शुरू करते हैं कि INDEX MATCH का उपयोग कैसे करें एक्सेल VBA के साथ।
हम INDEX और MATCH Functions Excel VBA का उपयोग करने जा रहे हैं कोड , एक साधारण UserForm बनाने के लिए। प्रपत्र का उपयोग करते हुए, उपयोगकर्ता छात्र के नाम का चयन करता है, और फिर उक्त छात्र और आंखों के रंग का संबंधित लिंग प्राप्त किया जाता है और लौटाया जाता है।
अभ्यास कार्यपुस्तिका डाउनलोड करें
कृपया अभ्यास कार्यपुस्तिका को डाउनलोड करें स्वयं अभ्यास करें।
INDEX-MATCH.xlsx
VBA कोड
के भीतर INDEX और MATCH का उपयोग करने के लिए 9 आसान उपाय इंडेक्स और मैच फ़ंक्शंस का उपयोग अक्सर उन्नत लुकअप करने के लिए सूत्रों के संयोजन में किया जाता है। संयोजन में दोनों VLOOKUP पर कुछ लाभ प्रदान करते हैं।
हम पहले ही विस्तार से कवर कर चुके हैं कि उन्नत प्रदर्शन करने के लिए INDEX और MATCH का उपयोग कैसे करें एक Excel वर्कबुक में सीधे वर्कशीट सूत्र के रूप में लुकअप, पिछले ट्यूटोरियल में। अब हम यह देखने जा रहे हैं कि कैसे INDEX और MATCH फंक्शंस को एक साथ VBA कोड में इस्तेमाल किया जाए, ताकि समान कार्यक्षमता प्रदान की जा सके। लुक अप यूजरफॉर्म हम बनाने जा रहे हैं।
चरण1: डेटासेट में इंडेक्स और मैच फंक्शन लागू करें
- हम अपने मैक्रो में दो शीट के साथ शुरुआत कर रहे हैं -सक्षम कार्यपुस्तिका। एक खाली शीट है जिसे यूजरफॉर्म कहा जाता है, दूसरी StudentInformation नाम की एक शीट होती है, जिसमें छात्रों के नाम, उनके अनुरूप लिंग, और आंखों का रंग दिखाने वाली एक श्रेणी होती है। नीचे दिखाया गया है। और MATCH एक फॉर्मूले में कार्य करता है, वास्तविक वर्कशीट में हमें उस छात्र के नाम का लिंग देने के लिए जिसे हम देखना चाहते हैं। हम निम्नलिखित सूत्र का उपयोग करेंगे:
=INDEX(B2:B31, MATCH("Diana Graham", A2:A31, 0))
- CTRL-ENTER<दबाने पर 2>, हमें नीचे दिखाए गए लिंग के रूप में लौटाए गए महिलाओं का मान मिलता है।
- अब हम श्रेणी को A2: A31 , StudentNames नाम देंगे, जैसा कि नीचे दिखाया गया है।
<3
- राइट-क्लिक करके और छुपाएं का चयन करके छात्र सूचना शीट को छुपाएं। जानकारी वाले बैक-एंड वर्कशीट को सतही रूप से छिपाना एक अच्छा विचार है, जो आप नहीं चाहते कि उपयोगकर्ता संपादित करें या देखें।
चरण 3: विज़ुअल बेसिक विंडो खोलें
- अब UserForm शीट सक्रिय होने के साथ, हम पर जाते हैं डेवलपर > कोड > विजुअल बेसिक विजुअल बेसिक एडिटर (वीबीई) खोलने के लिए। .
चरण 4: गुण बदलें और टेक्स्ट बॉक्स जोड़ें
- गुणों विंडो का उपयोग करना , हम अपने फॉर्म का नाम बदलकर StudentLookup रख देंगे, कैप्शन को लुकअप स्टूडेंट इंफॉर्मेशन में बदल देंगे, बैककलर को हल्के नीले रंग में बदल देंगे, और ऊंचाई को 300<2 पर सेट कर देंगे।> पीएक्स और चौड़ाई 350 पीएक्स। यदि प्रोपर्टीज विंडो दिखाई नहीं दे रही है, तो इसे देखने के लिए अपने कीबोर्ड पर F4 कुंजी दबाएं।
- हम अब टूलबॉक्स का उपयोग करके एक लेबल डालेंगे (यदि आप टूलबॉक्स नहीं देख पा रहे हैं, तो किसी कारण से देखें, टूलबॉक्स पर जाएं), एक छात्र को चुनने के लिए कैप्शन बदलें और हम बदल देंगे बैककलर इस मामले में सफेद करने के लिए। हम फ़ॉन्ट को Georgia , फ़ॉन्ट शैली को बोल्ड , फ़ॉन्ट आकार को 12 , और मध्य पाठ को संरेखित करें। उपयोग किया जाने वाला विशेष प्रभाव 1– fmSpecialEffectRaised होगा जैसा कि नीचे दिखाया गया है।
- अब हम नीचे एक कॉम्बो बॉक्स डालेंगे लेबल। इस कॉम्बो बॉक्स को cmdStudentName नाम दें और RowSource के लिए StudentNames टाइप करें।
यह सभी देखें: एक्सेल में दो वर्णों के बीच पाठ कैसे निकालें (4 तरीके)- देखने के लिए कॉम्बो बॉक्स के RowSource को सेट करने का प्रभाव, क्लिक करें रन Sub/UserForm बटन।
- अब <1 सेट करने के कारण> RowSource
- क्लोज बटन पर क्लिक करके UserForm को बंद करें। VBE पर वापस जाने के लिए Alt-F11 दबाएं।
- VBE में वापस आने के बाद, UserForm में एक और लेबल जोड़ें ( कॉम्बो बॉक्स के नीचे) और कैप्शन को लिंग में बदलें और हम इस मामले में बैककोलर को सफेद में बदल देंगे। हम फॉन्ट को Georgia , फॉन्ट स्टाइल को बोल्ड , फॉन्ट साइज को 12 और सेंटर टेक्स्ट को अलाइन करेंगे। . उपयोग किया जाने वाला विशेष प्रभाव 1– fmSpecialEffectRaised होगा जैसा कि नीचे दिखाया गया है।
- एक टेक्स्टबॉक्स बनाएं लिंग लेबल के नीचे, और इसे txtGender नाम दें।
- जोड़ें दूसरा लेबल आंख<2 रंग और नाम का टेक्स्टबॉक्स txtEyeColor जैसा कि नीचे दिखाया गया है। यह सुनिश्चित करने के लिए कि UserForm का एक समान रूप है, उपयोग उन्हीं गुणों का उपयोग करें जो प्रपत्र में पूर्व में जोड़े गए दो अन्य लेबलों के लिए थे।
- अब उपयोगकर्ता में जोड़े गए सभी नियंत्रण चुनें, अब तक नियंत्रण कुंजी का उपयोग कर रहे हैं।
- केंद्र क्षैतिज रूप से, जैसा कि नीचे दिखाया गया है।
पढ़ें अधिक: एक्सेल में इंडेक्स मैच फॉर्मूला का उपयोग कैसे करें (9 उदाहरण)
समान रीडिंग
- एक्सेल INDEX MATCH if Cell Contains Text
- Excel में INDEX-MATCH फ़ार्मूला का उपयोग कैसे करें ताकि एकाधिक परिणाम उत्पन्न हो सकें
- Excel में अनुक्रमणिका मिलान योग एकाधिक पंक्तियाँ (3 तरीके)
- Excel VBA प्रोग्रामिंग सीखें और; मैक्रोज़ (मुफ़्त ट्यूटोरियल - चरण दर चरण)
- एक्सेल VBA में 22 मैक्रो उदाहरण
चरण 5: टूलबॉक्स से एक बटन जोड़ें
- अगला, टूलबॉक्स का उपयोग करके फॉर्म में एक बटन जोड़ें। बदलें बटन का नाम cmdLookUp में, बैककलर को हल्का नारंगी रंग में बदलें, तहोमा फॉन्ट रखें और बदलें स्टाइल को बोल्ड में बदलें, अंत में बटन के कैप्शन को लुक ऊपर स्टूडेंट में बदलें विवरण जैसा कि नीचे दिखाया गया है।
चरण 6: VBA कोड डालें
- राइट-क्लिक , नया जोड़ा गया बटन, और चयन करें देखें कोड ।
- बटन के लिए निम्नलिखित कोड दर्ज करें क्लिक इवेंट:
9587
हम तीन वैरिएबल की घोषणा करके और उन्हें वैरिएंट डेटा टाइप असाइन करके शुरू करते हैं। वेरिएंट डेटा प्रकार। भिन्न डेटा प्रकार आरंभ करने के लिए एक अच्छा डेटा प्रकार है। क्योंकि वर्कशीट फ़ंक्शन के साथ काम करते समय, आप हमेशा आउटपुट के बारे में सुनिश्चित नहीं हो सकते हैं। इसलिए जब आप शुरू कर रहे हों, तो वैरिएंट डेटा प्रकार का उपयोग करें।
बाद में, अन्य विशिष्ट डेटा प्रकारों में से एक का उपयोग करने की सलाह दी जाती है, जैसे कि पूर्णांक या स्ट्रिंग। अधिक उन्नत लंबे कोड के लिए, वैरिएंट डेटा प्रकार अन्य डेटा प्रकारों की तरह कुशलता से मेमोरी का उपयोग नहीं करता है। UserForm पर ड्रॉप-डाउन कॉम्बो बॉक्स। यदि कोई चयन नहीं है, तो अन्य सभी टेक्स्टबॉक्स रिक्त हैं।
यदि आप कॉम्बो बॉक्स से एक छात्र का नाम चुनते हैं UserForm, फिर वेरिएबल b INDEX वर्कशीट फ़ंक्शन का उपयोग करके MATCH फ़ंक्शन के साथ संयोजन में मान खींचता है VBA कोड, जैसा कि दिखाया गया है।
यह मूल रूप से वर्कशीट फ़ंक्शन के समान सिंटैक्स का उपयोग करके मान को देखता है। VBA में वर्कशीट फ़ंक्शंस का उपयोग करते समय, VBA IntelliSense इस विशेष मामले में बहुत अंतर्ज्ञानी नहीं है, इसलिए इसके साथ परिचितवर्कशीट ज्ञान से प्राप्त सिंटैक्स की सिफारिश की जाती है। वैरिएबल c INDEX वर्कशीट फ़ंक्शन का उपयोग MATCH फ़ंक्शन<के संयोजन में करके मान खींचता है 2> VBA कोड में जब उपयोगकर्ता कॉम्बो बॉक्स से एक विकल्प का चयन करता है।
वेरिएबल b लिंग <1 से मूल्य प्राप्त करता है>column वर्कशीट में, जबकि वेरिएबल c वर्कशीट में आई कलर कॉलम से वैल्यू प्राप्त करता है।
लिंग टेक्स्टबॉक्स b 's से पॉप्युलेट होता है। मान और आंखों के रंग का टेक्स्टबॉक्स c के मान से भरा हुआ है।
और पढ़ें: एक्सेल वीबीए इवेंट्स (एक पूर्ण दिशानिर्देश)
चरण 7: एक कमांड बटन डालें
- अब अपनी वर्कबुक में UserForm नामक वर्कशीट पर जाएं। इसे फ़ॉर्मेट करें , जैसा कि नीचे दिखाया गया है, और ExcelWIKI द्वारा प्रदान की गई इमेज डालें ।
<10
- दिखाए गए अनुसार एक बटन डालें ।
<34
- चयनित बटन के साथ, जायें डेवलपर > नियंत्रण > गुण .
- बटन के नाम को cmdShowForm<में बदलें 2> और कैप्शन से लुकअप विद्यार्थी जानकारी ।
चरण 8: देखें लुकअप कोड
- राइट-क्लिक करें बटन और चुनें कोड देखें जैसा दिखाया गया हैनीचे।
- निम्नलिखित कोड दर्ज करें:
8850
चरण 9: अंतिम परिणाम प्रदर्शित करें
- वर्कशीट पर वापस जाएं। सुनिश्चित करें कि अनियंत्रित डिज़ाइन मोड है।
- फ़ॉर्म दिखाने के लिए बटन पर क्लिक करें।
- चुनें कॉम्बो बॉक्स का उपयोग करते हुए एक छात्र का नाम। कोड छात्र के लिंग और आंखों के रंग को स्वचालित रूप से वापस कर देगा।
अपनी कार्यपुस्तिका को मैक्रो-सक्षम कार्यपुस्तिका के रूप में सहेजें याद रखें , यदि आपने पहले से ऐसा नहीं किया है और वह आपके पास है, तो हम INDEX & लुकअप फॉर्म बनाने के लिए एक्सेल वीबीए कोड में वर्कशीट फ़ंक्शंस का मिलान करें। 3>
निष्कर्ष
एक्सेल में कई उपयोगी वर्कशीट फ़ंक्शंस हैं, जिनका उपयोग वीबीए में किया जा सकता है, जैसे INDEX & एक्सेल VBA कोड में MATCH वर्कशीट फ़ंक्शंस। ये फ़ंक्शंस आपको अपना VBA कोड विस्तारित करने की अनुमति देगा। यदि आप पहले से ही जानते हैं कि वे एक मानक एक्सेल <2 में कैसे काम करते हैं> वर्कशीट तो VBA के लिए ज्ञान को अपनाने से सीखने की अवस्था इतनी महान नहीं है। किसी के VBA कोड में वर्कशीट फ़ंक्शंस तक पहुँचना वास्तविक समय की बचत हो सकती है। क्योंकि किसी को पहले से मौजूद कार्यक्षमता के लिए कस्टम फ़ंक्शन विकसित करने की आवश्यकता नहीं है।
कृपया बेझिझक टिप्पणी करें और बताएंहमें अगर आप अपने VBA कोड और एप्लिकेशन में वर्कशीट फ़ंक्शंस का उपयोग करते हैं।
समीक्षा अनुभाग: अपनी समझ का परीक्षण करें
1) कॉलम ए में तीन वस्तुओं की एक सरल सूची सेट करें, जैसे कीनू, गाजर, और संतरे। , फिर कॉलम B में प्रत्येक आइटम के आगे वाले सेल में सूचीबद्ध करें कि कॉलम A में आइटम फल हैं या सब्जियां, एक बार जब आप अपना नमूना डेटा सेट करना पूरा कर लेते हैं, तो INDEX & MATCH कॉम्बिनेशन फंक्शन यह डिलीवर करने के लिए कि गाजर फल है या सब्जियां।
2) ईएसपीएन से एनएफएल के मुख्य कोचों और उनके द्वारा कोचिंग की जा रही संबंधित टीम पर सेट किए गए इस डेटा का उपयोग करें। एक उपयोगकर्ता प्रपत्र बनाएँ जो उपयोगकर्ता को टेक्स्ट बॉक्स में एक निश्चित कोच के नाम को इनपुट करने की अनुमति देता है। उसके बाद जिस टीम को वह कोचिंग दे रहा है उसे दूसरे टेक्स्टबॉक्स में डिलीवर करें जब उपयोगकर्ता सबमिट पर क्लिक करता है। INDEX & MATCH वर्कशीट फ़ंक्शन संयोजन आपके VBA कोड के भीतर।