यह ट्यूटोरियल आपको सिखाएगा कि वीबीए में एक उप प्रक्रिया से एक मूल्य कैसे वापस किया जाए।
एक उप प्रक्रिया को एक मान वापस करने के लिए डिज़ाइन नहीं किया गया है - यही वह है जिसके लिए फ़ंक्शन प्रक्रिया का उपयोग किया जाता है। हालांकि, ऐसा समय भी हो सकता है जब आप उप प्रक्रिया में कुछ कोड चला रहे हों जहां आपको उस उप प्रक्रिया से मूल्य प्राप्त करने की आवश्यकता हो। ऐसा करने का तरीका मॉड्यूल या वैश्विक चर का उपयोग करना है या एक्सेल शीट को पॉप्युलेट करने के लिए उप प्रक्रिया का उपयोग करना है।
एक मूल्य वापस करने के लिए चर का उपयोग करना
आप मॉड्यूल-स्तर पर चर घोषित कर सकते हैं। ऐसा करते समय, उन वेरिएबल्स का उपयोग मॉड्यूल के भीतर कहीं भी किया जा सकता है और वेरिएबल अपने मूल्यों को बनाए रखते हैं। मॉड्यूल-स्तर पर एक चर घोषित करने के लिए, बस अपने कोड मॉड्यूल के शीर्ष पर चर घोषित करें:
123456789 | विकल्प स्पष्टडबल के रूप में मंद dblQtyउप टेस्टए ()'टेस्टबी उप को कॉल करें'कॉल टेस्टबी'मॉड्यूल विंडो में चर मान दिखाएं'डिबग.प्रिंट dblQtyअंत उप |
1234 | उप टेस्टबी ()'मॉड्यूल वैरिएबल को पॉप्युलेट करें'डीबीएलक्यूटी = 900अंत उप |
इन्हें एक साथ रखने के लिए, हम टेस्टए चलाएंगे, जो बदले में टेस्टबी को कॉल करेगा और हमें तत्काल विंडो में 900 का मान देगा।
यह केवल मॉड्यूल के भीतर काम करेगा, क्योंकि मॉड्यूल स्तर पर डिम स्टेटमेंट का उपयोग करके चर घोषित किया गया है।
वैश्विक चर
आप अपने प्रोजेक्ट मॉड्यूल में इसका उपयोग करने के लिए वैरिएबल को वैश्विक स्तर पर घोषित कर सकते हैं।
एक्सेल शीट को पॉप्युलेट करने के लिए उप प्रक्रिया का उपयोग करना
नीचे दी गई उप प्रक्रिया सीधे आपकी एक्सेल शीट में श्रेणी A1 से C1 तक भर देगी, इस प्रकार उप प्रक्रिया से कक्षों में मान वापस कर देगी।
12345 | उप पॉप्युलेट रेंज ()रेंज ("ए 1") = "उत्पाद"रेंज ("बी 1") = "मात्रा"रेंज ("सी 1") = "लागत"अंत उप |
फिर आप सेल मानों को संदर्भित करके उन मानों को किसी अन्य प्रक्रिया में संदर्भित कर सकते हैं:
1234567 | उप पुनर्प्राप्ति रेंज ()स्ट्रिंग के रूप में मंद उत्पाद, लंबे समय तक मात्रा, डबल के रूप में लागतउत्पाद = रेंज ("ए 1")क्वांट = रेंज ("बी 1")लागत = रेंज ("सी 1")अंत उप |