vba function का एक टुकड़ा है जो एक विशिष्ट कार्य करता है और परिणाम देता है। फ़ंक्शंस का उपयोग मुख्य रूप से दोहराव वाले कार्यों को करने के लिए किया जाता है जैसे कि गणना करना, आउटपुट के लिए डेटा फ़ॉर्मेट करना आदि।
वीबीए में, आप एक फ़ंक्शन या उपयोगकर्ता-परिभाषित फ़ंक्शन बना सकते हैं जिसका उपयोग वर्कशीट में नियमित कार्यों की तरह ही किया जा सकता है।
यह बहुत मददगार होता है जब मौजूदा एक्सेल फ़ंक्शन पर्याप्त नहीं होता है। इन मामलों में, आप अपनी विशिष्ट आवश्यकताओं को पूरा करने के लिए अपना कस्टम उपयोगकर्ता-परिभाषित फ़ंक्शन बना सकते हैं।
आप एक vba function को मॉड्यूल में रख सकते हैं। आइए स्टेप बाय स्टेप देखें:
vba function
चरण 1: Developer checkbox पर जाएं।
चरण 2: Visual Basic editor पर क्लिक करें।
स्टेप 3: इसके बाद इन्सर्ट बटन पर क्लिक करें।
चरण 4: मॉड्यूल विकल्प का चयन करें।
Syntax for vba function
- Private Function FunctionName (ByVal arg1 As Integer, ByVal arg2 As Integer)
- FunctionName = arg1 + arg2
- End Function
उदाहरण के लिए, मान लीजिए कि निम्न कोड में Sum नाम का एक फंक्शन है, जैसे:
- Private Function Sum (x As Double, y As Double) As Double
- Area = x + y
- End Function
Explanation:इस उदाहरण में फ़ंक्शन में दो तर्क (प्रकार डबल) और एक वापसी प्रकार (प्रकार डबल का भी) है। फ़ंक्शन का नाम यह इंगित करने के लिए योग है कि आप किस परिणाम को वापस करना चाहते हैं जैसे (x + y)।
अब आप केवल फ़ंक्शन (योग) के नाम का उपयोग करके और प्रत्येक तर्क के लिए एक मान देकर इस फ़ंक्शन को अपने कोड में कहीं और से कॉल कर सकते हैं।
अपनी वर्कशीट पर एक कमांड बटन डालें और निम्नलिखित कोड जोड़ें।
- Dim z As Double
- z = Sum (4, 8) + 3
- MsgBox z
Explanation: परिणाम को संग्रहीत करने के लिए आप किसी अन्य चर z का उपयोग कर सकते हैं। फ़ंक्शन एक मान देता है, इसलिए आपको इन मानों को अपने कोड में पकड़ना होगा। साथ ही, आप इस वेरिएबल में एक और मान जोड़ सकते हैं। MsgBox का उपयोग करके मान प्रदर्शित करें।
vba function example
एक फ़ंक्शन सबरूटीन के समान है। फ़ंक्शन और सबरूटीन के बीच एकमात्र अंतर यह है कि फ़ंक्शन कॉल करने पर एक मान देता है, लेकिन एक सबरूटीन एक मान वापस नहीं करता है जब इसे कॉल किया जाता है।
मान लीजिए कि आप क्षेत्र खोजना चाहते हैं, इसलिए आपको एक ऐसा फ़ंक्शन बनाने की ज़रूरत है जो मान स्वीकार करता है कि फ़ंक्शन नाम के साथ ही वापस किया जा सकता है।
चरण 1: वर्कशीट में एक कमांड बटन जोड़ें।
1. फिर कमांड बटन की नेम प्रॉपर्टी सेट करें।
2. कमांड बटन की कैप्शन प्रॉपर्टी सेट करें।
3. अब, इंटरफ़ेस नीचे स्क्रीनशॉट जैसा दिखता है।
चरण 2: कोड विंडो खोलें और निम्न कोड लिखें।
- Private Function Area(Length As Double, Optional Width As Variant)
- If IsMissing(Width) Then
- Area = Length * Length
- Else
- Area = Length * Width
- End If
- End Function
चरण 3: वह कोड लिखें जो फ़ंक्शन को कॉल करता है।
- btnArea_Click command बटन पर राइट-क्लिक करें।
- कोड देखें विकल्प चुनें।
- और निम्न कोड जोड़ें।
- Private Sub btnAreaFunction_Click()
- MsgBox Area(5, 9)
- End Sub
चरण 4: उपरोक्त कोड चलाएँ,