एक्सेल VBA क्लास मॉड्यूल
जब हम VBA का उपयोग करते हैं तो हम VBA में परिभाषित गुणों और विशेषताओं का उपयोग करते हैं लेकिन तब क्या होता है जब हम अपने गुणों और विधियों और विशेषताओं को बनाना चाहते हैं, जब हम VBA में एक क्लास मॉड्यूल का उपयोग करते हैं ताकि हम इसे उपयोगकर्ता-परिभाषित कर सकें, क्लास मॉड्यूल में उपयोगकर्ता द्वारा कार्यों, गुणों और वस्तुओं के लिए निर्धारित कोड का अपना सेट होता है।
क्लास मॉड्यूल्स का उपयोग ऑब्जेक्ट बनाने के लिए किया जाता है। जब हम आइटम कहते हैं, भले ही यह एक चर है, लेकिन वे छोटे कार्यक्रम हैं। कोड लिखते समय, हम आमतौर पर मॉड्यूल में लिखते हैं। आवश्यक मॉड्यूल वे हैं जहां हम काम करने के लिए अपने सिद्धांतों को लिखते हैं। ग्राफिक यूजर इंटरफेस बनाने के लिए हम यूजर फॉर्म का भी उपयोग करते हैं।

लेकिन यदि आप उपरोक्त छवि को देखते हैं, तो आप "क्लास मॉड्यूल" देख सकते हैं। मुझे पता है कि आपने तब तक नहीं छुआ है जब तक आप इस पोस्ट को नहीं पढ़ रहे हैं। आप सोच रहे होंगे कि यह VBA क्लास मॉड्यूल क्या है जब सभी काम हमारे नियमित मॉड्यूल का उपयोग करके किया जा सकता है।
क्लास मॉड्यूल क्या है?
क्लास मॉड्यूल एक उपयोगकर्ता को अपनी वस्तु बनाने की अनुमति देता है जैसे कि हमने कैसे "मॉड्यूल", "वर्कबुक," रेंज "जैसे मानक मॉड्यूल में आइटम बनाए हैं।
क्लास मॉड्यूल का उपयोग करते हुए, हम कस्टम ऑब्जेक्ट बना सकते हैं।
कक्षा का वस्तुओं से सीधा संबंध है। उदाहरण के लिए, आपके पास मशीन बनाने के लिए एक मशीन आरेख है, लेकिन याद रखें कि यह अभी तक एक मशीन नहीं है और इस मशीन आरेख का उपयोग कर रहा है, और हम इस तरह की कई मशीनें बना सकते हैं।
उदाहरण के लिए, यदि आप कई मॉडल की विशेषताओं को सूचीबद्ध करने के लिए विभिन्न मशीन ब्रांडों को सूचीबद्ध करना चाहते हैं।
मशीन में, हमारे पास एक ब्रांड नाम, श्रृंखला संख्या, मशीन शक्ति, डिवाइस का रंग, इसमें शामिल मोटर्स की संख्या, मोटर ईंधन प्रकार, आदि हैं। तकनीकी भाषा में, इन्हें "गुण" कहा जाता है।
मशीन के गुणों के बारे में, हम शुरू कर सकते हैं, हम बंद कर सकते हैं, हम मोटर की गति बढ़ा सकते हैं, हम रोक सकते हैं, आदि … और ये "तरीके" कहलाते हैं।
उदाहरण
चलो गेंद को रोल करना शुरू करें क्योंकि सैद्धांतिक भाग को पढ़ना हमेशा उबाऊ बात है। क्लास मॉड्यूल डालने के लिए, एक बेसिक विज़ुअल एडिटर में इन्सर्ट ऑप्शन पर जाएँ।

अब हम नीचे की तरह एक क्लास मॉड्यूल देख सकते हैं।

यह एक नियमित मॉड्यूल के रूप में हमारे ऊपर जैसा दिखता है। गुण विंडो में वर्ग मॉड्यूल का नाम बदलें। गुण विंडो देखने के लिए, F4 कुंजी दबाएं ।

अब चर को एक स्ट्रिंग के रूप में घोषित करें।

वीबीए में एक उपप्रक्रिया का निर्माण किए बिना, हमें चर घोषित करने और "सार्वजनिक" शब्द का उपयोग करने की आवश्यकता है न कि "मंद"।
अब हम इस वेरिएबल को किसी भी मॉड्यूल और क्लास मॉड्यूल में एक्सेस कर सकते हैं।
अब एक नियमित मॉड्यूल पर जाएं और चर का नाम दें।

चर घोषित करने के बाद, हमें वीबीए में डेटा प्रकार निर्दिष्ट करने की आवश्यकता है; डेटा प्रकार सेट करने के बजाय, हम क्लास मॉड्यूल का नाम दे सकते हैं, अर्थात, सीएम।

चर "k" का उपयोग करते हुए, हम सार्वजनिक मॉड्यूल को कक्षा मॉड्यूल में परिभाषित कर सकते हैं, जिसका अर्थ है, "मेरा मूल्य।"

जैसा कि हम उपरोक्त चित्र में देख सकते हैं, यह मान को असाइन करने के लिए वर्ग मॉड्यूल से चर नाम का विकल्प दिखा रहा है।

अब VBA संदेश बॉक्स में निर्दिष्ट चर का मान दिखाएं।
कोड:
Sub Class_Example () Dim k as New CM k.MyValue = "हेल्लो" MsgBox k.MyValue उप सब

परिणाम दिखाने के लिए F5 कुंजी या मैन्युअल रूप से इस कोड का उपयोग करें।

क्लास मॉड्यूल बनाम ऑब्जेक्ट
क्लास मॉड्यूल के शुरुआती चरण में, हर कोई भ्रमित हो जाता है कि क्लास क्या है और ऑब्जेक्ट क्या है।
इसे समझने के लिए, मशीन आरेख के हमारे पहले उदाहरण को याद करें। पहली चीज जिसे हमें मशीन बनाने की आवश्यकता है, वह है कि हमें पहले मशीन को डिजाइन करने की आवश्यकता है, और फिर उस डिजाइन के साथ कई प्रतियों को दोहराया जा सकता है।
अब इसे हमारे वर्ग मॉड्यूल से संबंधित करें।
- यहाँ क्लास मॉड्यूल एक डिज़ाइन है। और ऑब्जेक्ट डिज़ाइन द्वारा बनाई गई कॉपी है ।
- एक और दिलचस्प बात यह है कि हमें क्लास मॉड्यूल से एक ऑब्जेक्ट बनाने के लिए "नए" शब्द का उपयोग करने की आवश्यकता है।
नीचे उसी का एक उदाहरण है।

एक और बात जब हम वर्कशीट, वर्कबुक और रेंज ऑब्जेक्ट जैसी अंतर्निहित वस्तुओं का उपयोग करते हैं, तो हम "नया" शब्द का उपयोग नहीं करते हैं।
क्लास मॉड्यूल के साथ कार्यवाही शुरू करने के लिए, इन बुनियादी चीजों को आपको पता होना चाहिए। आने वाले लेखों में, हम अगले स्तर के उदाहरण देखेंगे।
यह समझना मुश्किल लगता है; जितना अधिक समय आप क्लास मॉड्यूल के साथ बिताएंगे, आपको इसकी आदत हो जाएगी।