हालाँकि एक्सेल में पहले से ही सैकड़ों बिल्ट-इन फ़ंक्शंस हैं जैसे SUM, VLOOKUP, LEFT, और इसी तरह, उपलब्ध बिल्ट-इन फ़ंक्शंस आमतौर पर काफी जटिल कार्यों को करने के लिए पर्याप्त नहीं होते हैं। हालांकि, चिंता न करें क्योंकि आपको केवल आवश्यक कार्यों को स्वयं बनाने की आवश्यकता है।
कदम
चरण 1. एक नई कार्यपुस्तिका बनाएं या उस कार्यपुस्तिका को खोलें जिसे आप उपयोगकर्ता परिभाषित कार्यों (यूडीएफ) के साथ संसाधित करना चाहते हैं।
चरण 2. माइक्रोसॉफ्ट एक्सेल में टूल्स-> मैक्रो-> विजुअल बेसिक एडिटर (या शॉर्टकट Alt + F11 दबाएं) के माध्यम से विजुअल बेसिक एडिटर खोलें।
चरण 3. अपनी वर्कशीट में एक नया मॉड्यूल जोड़ने के लिए मॉड्यूल बटन पर क्लिक करें।
आप एक नया मॉड्यूल जोड़े बिना किसी कार्यपुस्तिका में UDF बना सकते हैं, लेकिन फ़ंक्शन उसी कार्यपुस्तिका में अन्य कार्यपत्रकों में काम नहीं करेगा।
चरण 4. अपने फ़ंक्शन का "हेड" या "प्रोटोटाइप" बनाएं।
फ़ंक्शन प्रोटोटाइप को निम्नलिखित संरचना का पालन करना चाहिए:
सार्वजनिक फ़ंक्शन "फ़ंक्शन नाम" (पैरामीटर 1 टाइप 1 के रूप में, पैरामीटर 2 टाइप 2 के रूप में) परिणाम प्रकार के रूप में।
प्रोटोटाइप में यथासंभव अधिक से अधिक कार्य हो सकते हैं, और उनके प्रकार सभी बुनियादी डेटा प्रकार या श्रेणी के रूप में एक्सेल ऑब्जेक्ट प्रकार हो सकते हैं। आप पैरामीटर को "ऑपरेटर" (ऑपरेटर) के रूप में सोच सकते हैं, जिस पर फ़ंक्शन कार्य करेगा। उदाहरण के लिए, जब आप 45 डिग्री की ज्या की गणना करने के लिए SIN(45) लिखते हैं, तो संख्या 45 को एक पैरामीटर के रूप में लिया जाएगा। फिर, फ़ंक्शन कोड गणना करने और परिणाम प्रदर्शित करने के लिए उन मानों का उपयोग करेगा।
चरण 5. यह सुनिश्चित करने के लिए फ़ंक्शन कोड जोड़ें कि आप: 1) पैरामीटर द्वारा दिए गए मान का उपयोग करें; 2) परिणाम को फ़ंक्शन नाम पर पास करें; और 3) "एंड फंक्शन" वाक्य के साथ फ़ंक्शन को बंद करें. VBA या किसी अन्य भाषा में प्रोग्राम करना सीखने में बहुत समय और विस्तृत मार्गदर्शन लगता है। सौभाग्य से, इन कार्यों में आमतौर पर छोटे कोड ब्लॉक होते हैं और प्रोग्रामिंग भाषा सुविधाओं का अधिक उपयोग नहीं करते हैं। यहाँ VBA भाषा के कुछ तत्व दिए गए हैं जिनका उपयोग किया जा सकता है:
- अगर (अगर) ब्लॉक, जो आपको केवल शर्त पूरी होने पर कोड के एक हिस्से को निष्पादित करने की अनुमति देता है। उदाहरण के तौर पे:
- . आप कोड के दूसरे भाग के साथ Else कीवर्ड को छोड़ सकते हैं क्योंकि यह वैकल्पिक है।
- डू (डू) ब्लॉक, जो शर्त पूरी होने पर या जब तक कोड के एक हिस्से को निष्पादित करता है। उदाहरण के तौर पे:
- . दूसरी पंक्ति पर भी ध्यान दें जो चर को "घोषित" करती है। आप बाद में उपयोग के लिए अपने कोड में चर जोड़ सकते हैं। चर कोड में अस्थायी मान के रूप में कार्य करते हैं। अंत में, फ़ंक्शन घोषणा को BOOLEAN के रूप में मानें, जो एक डेटा प्रकार है जो केवल TRUE या FALSE मानों की अनुमति देता है। अभाज्य संख्याओं को निर्धारित करने का यह तरीका इष्टतम से बहुत दूर है, लेकिन कोड को इस तरह से लिखा गया है कि इसे पढ़ना आसान है।
- ब्लॉक के लिए (को), जो एक निश्चित मात्रा में कोड निष्पादित करता है। उदाहरण के तौर पे:
- एक स्थिर मान जो सीधे कक्ष सूत्र में टाइप किया जाता है। इस मामले में, पाठ (स्ट्रिंग) को उद्धृत किया जाना चाहिए।
- सेल संदर्भ, उदाहरण के लिए बी -6 या रेंज जैसे A1:C3 (पैरामीटर डेटा प्रकार "रेंज" होना चाहिए)
-
एक अन्य फ़ंक्शन जो आपके फ़ंक्शन में संलग्न है (आपका फ़ंक्शन किसी अन्य फ़ंक्शन में भी संलग्न किया जा सकता है), उदाहरण के लिए: = फ़ैक्टोरियल (MAX(D6:D8))
चरण 7. सुनिश्चित करें कि परिणाम सही हैं।
यह सुनिश्चित करने के लिए कई बार इसका उपयोग करें कि फ़ंक्शन विभिन्न पैरामीटर मानों को सही ढंग से संभालने में सक्षम है:
टिप्स
- इफ, फॉर, डू इत्यादि जैसे कंट्रोल स्ट्रक्चर में कोड ब्लॉक लिखते समय, स्पेसबार को कई बार या टैब दबाकर कोड ब्लॉक को इंडेंट (बाएं लाइन बॉर्डर को थोड़ा अंदर डालें) सुनिश्चित करें। इससे कोड को समझना आसान हो जाएगा और त्रुटियों को ढूंढना बहुत आसान हो जाएगा। इसके अलावा, कार्यक्षमता में वृद्धि करना आसान हो जाता है।
- यदि आप फ़ंक्शन के लिए कोड लिखना नहीं जानते हैं, तो Microsoft Excel में एक साधारण मैक्रो कैसे लिखें लेख पढ़ें।
- कभी-कभी, फ़ंक्शन को परिणाम की गणना करने के लिए सभी मापदंडों की आवश्यकता नहीं होती है। इस मामले में, आप फ़ंक्शन हेडर में पैरामीटर नाम से पहले वैकल्पिक कीवर्ड का उपयोग कर सकते हैं। आप अपने कोड में IsMissing(parameter_name) फ़ंक्शन का उपयोग यह निर्धारित करने के लिए कर सकते हैं कि किसी पैरामीटर को कोई मान दिया गया है या नहीं।
- अप्रयुक्त नामों को एक्सेल में फ़ंक्शन के रूप में उपयोग करें ताकि कोई फ़ंक्शन अधिलेखित और हटा न जाए।
- एक्सेल में कई बिल्ट-इन फंक्शन हैं और इन बिल्ट-इन फंक्शंस का उपयोग करके अधिकांश गणना व्यक्तिगत रूप से या एक ही बार में की जा सकती है। सुनिश्चित करें कि आप स्वयं कोडिंग शुरू करने से पहले उपलब्ध कार्यों की सूची पर एक नज़र डालें। यदि आप अंतर्निहित कार्यों का उपयोग करते हैं तो निष्पादन तेजी से किया जा सकता है।
चेतावनी
- सुरक्षा कारणों से, बहुत से लोग मैक्रोज़ को अक्षम कर देते हैं। सुनिश्चित करें कि आपने अपने कार्यपुस्तिका प्राप्तकर्ताओं को सूचित किया है कि सबमिट की गई कार्यपुस्तिका में मैक्रो हैं, और ये मैक्रोज़ उनके कंप्यूटर को नुकसान नहीं पहुंचाएंगे।
- इस आलेख में प्रयुक्त फ़ंक्शन संबंधित समस्या को हल करने का सबसे अच्छा तरीका नहीं है। भाषा नियंत्रण संरचनाओं के उपयोग की व्याख्या करने के लिए उदाहरण का उपयोग किया जाता है।
- VBA, अन्य भाषाओं की तरह, Do, If और For के अलावा कई अन्य नियंत्रण संरचनाएं हैं। यहां चर्चा की गई संरचना केवल यह बताती है कि फ़ंक्शन के स्रोत कोड में क्या किया जा सकता है। इंटरनेट पर कई गाइड हैं जिनका उपयोग वीबीए सीखने में आपकी मदद के लिए किया जा सकता है।
पब्लिक फंक्शन कोर्स परिणाम (पूर्णांक मान के रूप में) स्ट्रिंग के रूप में
यदि मान >= 5 तब
पाठ्यक्रम परिणाम = "स्वीकृत"
अन्यथा
पाठ्यक्रम परिणाम = "अस्वीकृत"
अगर अंत
अंत समारोह
अगर कोड ब्लॉक में तत्वों पर ध्यान दें:
यदि शर्त है तो कोड ELSE कोड END IF
सार्वजनिक कार्य बिलप्रिमा (पूर्णांक के रूप में मान) बूलियन के रूप में
डिम आई अस इंटीजर
मैं = 2
बिलप्रिमा = सत्य
करना
यदि मान / i = इंट (मान / i) तो
बिलप्रिमा = झूठा
अगर अंत
मैं = मैं + 1
लूप जबकि i <वैल्यू और नंबरप्रिमा = ट्रू
अंत समारोह
तत्वों को फिर से देखें:
DO कोड लूप जबकि/जब तक स्थिति नहीं है
पब्लिक फंक्शन फैक्टोरियल (पूर्णांक के रूप में मान) लंबे समय तक
लंबे समय तक मंद परिणाम
डिम आई अस इंटीजर
यदि मान = 0 तो
परिणाम = 1
अन्य यदि मान = 1 तब
परिणाम = 1
अन्यथा
परिणाम = 1
i = 1 के लिए मान के लिए
परिणाम = परिणाम * मैं
अगला
अगर अंत
फैक्टोरियल = परिणाम
अंत समारोह
तत्वों को फिर से देखें:
चर के लिए = निचली सीमा से कोड की ऊपरी सीमा अगला
. साथ ही, if कथन में अतिरिक्त ElseIf तत्व पर ध्यान दें, जो आपको निष्पादित किए जा रहे कोड में अधिक विकल्प जोड़ने की अनुमति देता है। अंत में, "परिणाम" फ़ंक्शन और लॉन्ग के रूप में घोषित चर पर विचार करें। लंबा डेटा प्रकार इंटीजर की तुलना में बहुत बड़े मूल्यों की अनुमति देता है।
नीचे एक फ़ंक्शन के लिए कोड दिखाया गया है जो छोटी संख्याओं को शब्दों में परिवर्तित करता है।
चरण 6. कार्यपुस्तिका पर लौटें और सेल में फ़ंक्शन के नाम के बाद "बराबर" प्रतीक (=) लिखकर फ़ंक्शन का उपयोग करें।
उद्घाटन कोष्ठक लिखें ("(") फ़ंक्शन नाम के बाद, चिह्न का उपयोग करके प्रगाढ़ बेहोशी मापदंडों को अलग करने के लिए, और समापन कोष्ठक (")") के साथ समाप्त करें। उदाहरण के तौर पे:
= नंबर टॉलेटर (ए 4)
. आप होममेड फ़ार्मुलों को श्रेणियों में खोज कर भी उपयोग कर सकते हैं उपयोगकर्ता परिभाषित फॉर्मूला डालें विकल्प के अंदर। आप बस बटन पर क्लिक करें एफएक्स सूत्र पट्टी के बाईं ओर। फंक्शन में तीन प्रकार के पैरामीटर फॉर्म होते हैं: