एक मॉड्यूल समान कार्य और उप दिनचर्या, उनकी कार्यक्षमता के मामले में आम तौर पर वर्गीकृत किया का एक संग्रह है।
एक मॉड्यूल सबरूटीन/समारोह में, निजी: कार्य और उप दिनचर्या ही नहीं मॉड्यूल के भीतर उपलब्ध हैं। सार्वजनिक: उन्हें सीधे, कहीं से भी पहुंचा जा सकता है। (एक और मॉड्यूल, विभिन्न मैक्रो इत्यादि) मॉड्यूल में उपयोगिता कार्यों को स्टोर करना आम बात है। एक
Option Private Module
, जो मॉड्यूल में ही निजी किसी भी मानक मॉड्यूल के शीर्ष करने के लिए जोड़ा जा सकता है करता है, लेकिन एक वस्तु मॉड्यूल, ThisWorkbook, या पत्रक 1 की तरह पर अनुमति नहीं है, आदि
ThisWorkbook है कार्यपुस्तिका वस्तु का निजी मॉड्यूल। उदाहरण के लिए, कार्यपुस्तिका_ऑपेन(), वर्कबुक_Close() दिनचर्या, इस मॉड्यूल के भीतर रहते हैं। (Workbook Object Reference)
इसी तरह, पत्रक 1, Sheet2 अलग-अलग शीट के निजी मॉड्यूल हैं। उनमें, आप उस शीट के लिए विशिष्ट कार्यों में डाल देंगे। Worksheet_Activate, Worksheet_Deactivate, Workbook_SheetChange, आपको दिए गए डिफ़ॉल्ट घटनाओं रहे हैं, ताकि आप उन्हें संभाल कर सकते हैं, संबंधित निजी चादर मॉड्यूल के भीतर। (Worksheet Object Reference)
@Daniel कुक के रूप में टिप्पणी में कहा है, जबकि ThisWorkbook और वर्कशीट के मॉड्यूल subName()
या functionName()
मॉड्यूल के बाहर के रूप में प्रत्यक्ष उपयोग के लिए उपलब्ध नहीं हैं, यह अभी भी ThisWorkbook.subName()
या ThisWorkbook.functionName()
का उपयोग कर उन्हें कॉल करने के लिए संभव है
एक कक्षा मॉड्यूल वीबीए में ओओपी के निकटतम निकटतम हो सकता है। उनके पास रचनाकार, विनाशक हैं, और आपको वर्ग वस्तुओं को देने के लिए तत्काल किया जा सकता है।
+1 अच्छा विवरण –
जब मैं ने कहा, "निजी मॉड्यूल", मेरा मतलब यह नहीं था कि अपने कार्यों और तरीकों के बाहर से पहुंच से बाहर हो जाएगा। बस वह मॉड्यूल वर्कशीट या वर्कबुक ऑब्जेक्ट से संबंधित है। एक्सेसिबिलिटी केवल सार्वजनिक/निजी का उपयोग करके विधियों और सबराउटिन के लिए सेट की गई है। –
आप जीतते हैं, मेरी टिप्पणी अनुपयोगी है और मैं इसे हटा रहा हूं ... और मैं इसे जल्द ही हटा दूंगा। –