एक्सेल में VBA: एप्लीकेशन के लिए विजुअल बेसिक क्या है, इसका उपयोग कैसे करें

Everybody in this country should learn how to program a computer... because it teaches you how to think." -Steve Jobs

मैं स्टीव जॉब्स के बुद्धिमानी भरे शब्दों को आगे बढ़ाते हुए कहना चाहता हूँ कि दुनिया में हर किसी को कंप्यूटर प्रोग्राम करना सीखना चाहिए। हो सकता है कि आप प्रोग्रामर के तौर पर काम न करें या प्रोग्राम न लिखें, लेकिन यह आपको सोचना सिखाएगा।

विजुअल बेसिक फॉर एप्लीकेशन (VBA) क्या है?

अनुप्रयोगों के लिए विजुअल बेसिक (VBA) एक घटना-संचालित प्रोग्रामिंग भाषा है जिसे द्वारा कार्यान्वित किया जाता है Microsoft Office अनुप्रयोग विकसित करने के लिए। VBA स्वचालन प्रक्रियाओं को विकसित करने में मदद करता है, Windows API, और उपयोगकर्ता-परिभाषित फ़ंक्शन। यह आपको होस्ट एप्लिकेशन की उपयोगकर्ता इंटरफ़ेस सुविधाओं में हेरफेर करने में भी सक्षम बनाता है।

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

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

VBA वास्तव में Visual Basic 6.0 का एक उपसमूह है। BASIC का अर्थ है Bईगिनर्स All-उद्देश्य Sप्रतीकात्मक Instruction Cस्तोत्र.

VBA क्यों?

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

एक्सेल में VBA के व्यक्तिगत एवं व्यावसायिक अनुप्रयोग

निजी इस्तेमाल के लिए, आप इसे सरल मैक्रोज़ के लिए इस्तेमाल कर सकते हैं जो आपके ज़्यादातर नियमित कार्यों को स्वचालित कर देगा। आप इसे कैसे हासिल कर सकते हैं, इस बारे में ज़्यादा जानकारी के लिए मैक्रोज़ पर लेख पढ़ें।

व्यावसायिक उपयोग के लिए, आप एक्सेल और VBA द्वारा संचालित पूर्ण शक्तिशाली प्रोग्राम बना सकते हैं। इस दृष्टिकोण का लाभ यह है कि आप अपने स्वयं के कस्टम प्रोग्राम में एक्सेल की शक्तिशाली विशेषताओं का लाभ उठा सकते हैं।

अनुप्रयोगों के लिए विज़ुअल बेसिक का परिचय

इससे पहले कि हम कोई भी कोड लिखें, हमें पहले मूल बातें जाननी होंगी। निम्नलिखित मूल बातें आपको आरंभ करने में मदद करेंगी।

  • परिवर्तनीय - हाई स्कूल में हमने बीजगणित के बारे में सीखा। (x + 2y) ज्ञात करें जहाँ x = 1 और y = 3 है। इस अभिव्यक्ति में, x और y चर हैं। उन्हें कोई भी संख्या दी जा सकती है, जैसे कि इस उदाहरण में क्रमशः 1 और 3। उन्हें क्रमशः 4 और 2 कहने के लिए भी बदला जा सकता है। संक्षेप में चर मेमोरी स्थान हैं। जैसा कि आप VBA Excel के साथ काम करते हैं, आपको बीजगणित कक्षाओं की तरह चर भी घोषित करने की आवश्यकता होगी।
  • चर बनाने के नियम
    • आरक्षित शब्दों का प्रयोग न करें - यदि आप एक छात्र के रूप में काम करते हैं, तो आप व्याख्याता या प्रिंसिपल शीर्षक का उपयोग नहीं कर सकते। ये शीर्षक व्याख्याताओं और स्कूल प्राधिकरण के लिए आरक्षित हैं। आरक्षित शब्द वे शब्द हैं जिनका Excel VBA में विशेष अर्थ होता है और इस तरह, आप उन्हें चर नामों के रूप में उपयोग नहीं कर सकते।
    • चर नामों में रिक्त स्थान नहीं हो सकते - आप पहले नंबर नामक चर को परिभाषित नहीं कर सकते। आप firstNumber या first_number का उपयोग कर सकते हैं।
    • वर्णनात्मक नामों का उपयोग करें - किसी वैरिएबल का नाम अपने नाम पर रखना बहुत लुभावना होता है, लेकिन इससे बचें। वर्णनात्मक नामों का उपयोग करें जैसे कि मात्रा, मूल्य, उप-योग आदि। इससे आपका एक्सेल VBA कोड पढ़ने में आसान हो जाएगा
  • अंकगणितीय ऑपरेटर – के नियम Brackets विभाजन गुणन जोड़ और घटाव (BODMAS) के लिए कई अलग-अलग अंकगणितीय ऑपरेटरों का उपयोग करने वाले अभिव्यक्तियों के साथ काम करते समय उन्हें लागू करना याद रखें। एक्सेल की तरह ही, आप इसका उपयोग कर सकते हैं
    • + जोड़ने के लिए
    • – घटाने के लिए
    • *गुणन के लिए
    • / विभाजन के लिए.
  • लॉजिकल ऑपरेटर्स – पिछले ट्यूटोरियल में शामिल लॉजिकल ऑपरेटर्स की अवधारणा VBA के साथ काम करते समय भी लागू होती है। इनमें शामिल हैं
    • यदि कथन
    • OR
    • नहीं
    • और
    • जब सही है
    • असत्य

डेवलपर टैब को सक्षम कैसे करें

नीचे एक्सेल में डेवलपर टैब को सक्षम करने की चरण-दर-चरण प्रक्रिया दी गई है:

  • नई कार्यपुस्तिका बनाएँ
  • रिबन स्टार्ट बटन पर क्लिक करें
  • विकल्प चुनो
  • अनुकूलित रिबन पर क्लिक करें
  • नीचे दी गई छवि में दिखाए अनुसार डेवलपर चेकबॉक्स का चयन करें
  • ठीक क्लिक करें

डेवलपर टैब सक्षम करें

अब आप रिबन में DEVELOPER टैब देख पाएंगे

VBA नमस्ते दुनिया!

अब हम VBA प्रोग्रामिंग भाषा में प्रोग्राम करने का तरीका दिखाएंगे। VBA में सभी प्रोग्राम को “Sub” से शुरू करना होता है और “End sub” पर खत्म करना होता है। यहाँ नाम वह नाम है जिसे आप अपने प्रोग्राम को देना चाहते हैं। जबकि sub का मतलब सबरूटीन है जिसे हम ट्यूटोरियल के बाद के भाग में सीखेंगे।

Sub name()
.
.
. 
End Sub

हम एक बुनियादी VBA प्रोग्राम बनाएंगे जो उपयोगकर्ता का नाम पूछने के लिए एक इनपुट बॉक्स प्रदर्शित करेगा और फिर एक अभिवादन संदेश प्रदर्शित करेगा

यह ट्यूटोरियल मानता है कि आपने ट्यूटोरियल पूरा कर लिया है एक्सेल में मैक्रोज़ और एक्सेल में डेवलपर टैब सक्षम किया है।

  • एक नई कार्य पुस्तिका बनाएं
  • इसे एक्सेल मैक्रो सक्षम वर्कशीट प्रारूप *.xlsm में सहेजें
  • डेवलपर टैब पर क्लिक करें
  • नियंत्रण रिबन बार के अंतर्गत INSERT ड्रॉप डाउन बॉक्स पर क्लिक करें
  • नीचे दी गई छवि में दिखाए अनुसार कमांड बटन का चयन करें

VBA हैलो वर्ल्ड प्रोग्राम

वर्कशीट पर कहीं भी कमांड बटन बनाएं

आपको निम्नलिखित संवाद विंडो मिलेगी

VBA हैलो वर्ल्ड प्रोग्राम

  • मैक्रो नाम को बदलकर btnHelloWorld_Click करें
  • नये बटन पर क्लिक करें
  • आपको निम्न VBA कोड विंडो मिलेगी

VBA हैलो वर्ल्ड प्रोग्राम

निम्नलिखित निर्देश कोड दर्ज करें

Dim name As String
name = InputBox("Enter your name")
MsgBox "Hello " + name

यहाँ,

  • “नाम को स्ट्रिंग के रूप में मंद करें” नाम नामक एक वैरिएबल बनाता है। वैरिएबल टेक्स्ट, संख्यात्मक और अन्य वर्ण स्वीकार करेगा क्योंकि हमने इसे एक स्ट्रिंग के रूप में परिभाषित किया है
  • “नाम = इनपुटBox("अपना नाम दर्ज करें")" अंतर्निहित फ़ंक्शन इनपुट को कॉल करता हैBox जो एक विंडो प्रदर्शित करता है जिसमें कैप्शन लिखा होता है अपना नाम दर्ज करें। दर्ज किया गया नाम फिर नाम वेरिएबल में संग्रहीत किया जाता है।
  • "MsgBox “नमस्ते” + नाम” अंतर्निहित फ़ंक्शन Msg को कॉल करता हैBox जो हैलो और प्रविष्ट नाम प्रदर्शित करता है।

आपकी पूरी कोड विंडो अब इस प्रकार दिखाई देगी

VBA हैलो वर्ल्ड प्रोग्राम

  • कोड विंडो बंद करें
  • बटन 1 पर राइट क्लिक करें और टेक्स्ट संपादित करें चुनें
  • नमस्ते कहें

VBA हैलो वर्ल्ड प्रोग्राम

  • नमस्ते कहें पर क्लिक करें
  • आपको निम्नलिखित इनपुट बॉक्स मिलेगा

VBA हैलो वर्ल्ड प्रोग्राम

  • अपना नाम दर्ज करें अर्थात जॉर्डन
  • आपको निम्न संदेश बॉक्स मिलेगा

VBA हैलो वर्ल्ड प्रोग्राम

बधाई हो, आपने अभी एक्सेल में अपना पहला VBA प्रोग्राम बनाया है

एक्सेल में सरल EMI कैलकुलेटर बनाने का चरण दर चरण उदाहरण

इस ट्यूटोरियल अभ्यास में, हम एक सरल प्रोग्राम बनाने जा रहे हैं जो EMI की गणना करता है। EMI का मतलब है इक्वेटेड मंथली इंस्टालमेंट। यह वह मासिक राशि है जो आप लोन लेने पर चुकाते हैं। नीचे दी गई छवि EMI की गणना करने का सूत्र दिखाती है।

एक्सेल में सरल EMI कैलकुलेटर बनाना

उपरोक्त सूत्र जटिल है और इसे एक्सेल में लिखा जा सकता है। अच्छी खबर यह है कि एक्सेल ने पहले से ही उपरोक्त समस्या का समाधान कर लिया है। आप उपरोक्त गणना करने के लिए PMT फ़ंक्शन का उपयोग कर सकते हैं।

PMT फ़ंक्शन निम्न प्रकार काम करता है

=PMT(rate,nper,pv)

यहाँ,

  • "दर" यह मासिक दर है। यह प्रति वर्ष भुगतान की संख्या से विभाजित ब्याज दर है
  • “एनपीईआर” यह भुगतानों की कुल संख्या है। यह प्रति वर्ष भुगतानों की संख्या से गुणा किया गया ऋण अवधि है
  • “पीवी” वर्तमान मूल्य। यह वास्तविक ऋण राशि है

नीचे दिखाए अनुसार एक्सेल सेल का उपयोग करके GUI बनाएं

एक्सेल में सरल EMI कैलकुलेटर बनाना

पंक्ति 7 और 8 के बीच एक कमांड बटन जोड़ें

बटन मैक्रो को btnCalculateEMI_Click नाम दें

संपादन बटन पर क्लिक करें

निम्नलिखित कोड दर्ज करें

Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double
monthly_rate = Range("B6").Value / Range("B5").Value
loan_amount = Range("B3").Value
number_of_periods = Range("B4").Value * Range("B5").Value 
emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount)
Range("B9").Value = emi

यहाँ,

  • “मंद मासिक दर एकल के रूप में,…” Dim वह कीवर्ड है जिसका उपयोग परिभाषित करने के लिए किया जाता है VBA में चर, मासिक_दर चर का नाम है, सिंगल डेटा प्रकार है जिसका अर्थ है कि चर संख्या स्वीकार करेगा।
  • “मासिक_दर = रेंज(“B6”).मूल्य / रेंज(“B5”).मूल्य” Range वह फ़ंक्शन है जिसका उपयोग VBA से एक्सेल सेल तक पहुंचने के लिए किया जाता है, Range(“B6”).Value B6 में मान का संदर्भ देता है
  • “वर्कशीटफ़ंक्शन.Pmt(…)” WorksheetFunction वह फ़ंक्शन है जिसका उपयोग एक्सेल में सभी फ़ंक्शन तक पहुंचने के लिए किया जाता है

निम्नलिखित छवि संपूर्ण स्रोत कोड दिखाती है

एक्सेल में सरल EMI कैलकुलेटर बनाना

  • सेव पर क्लिक करें और कोड विंडो बंद करें
  • नीचे दी गई एनिमेटेड छवि में दिखाए अनुसार अपने प्रोग्राम का परीक्षण करें

एक्सेल में सरल EMI कैलकुलेटर बनाना

एक्सेल उदाहरण में VBA का उपयोग कैसे करें

निम्नलिखित चरण बताएंगे कि Excel में VBA का उपयोग कैसे करें।

चरण 1) अपना VBA संपादक खोलें

मुख्य मेनू से डेवलपर टैब के अंतर्गत, "विज़ुअल बेसिक" आइकन पर क्लिक करें, यह आपका VBA संपादक खोल देगा।

एक्सेल में VBA का उपयोग करें

चरण 2) एक्सेल शीट का चयन करें & Double वर्कशीट पर क्लिक करें

यह एक VBA संपादक खोलेगा, जहाँ से आप एक्सेल शीट का चयन कर सकते हैं जहाँ आप कोड चलाना चाहते हैं। VBA संपादक खोलने के लिए वर्कशीट पर डबल क्लिक करें।

एक्सेल में VBA का उपयोग करें

यह फ़ोल्डर के दाईं ओर एक VBA संपादक खोलेगा। यह एक सफेद स्थान की तरह दिखाई देगा।

एक्सेल में VBA का उपयोग करें

चरण 3) संदेश में जो कुछ भी आप प्रदर्शित करना चाहते हैं उसे लिखेंBox

इस चरण में हम अपना पहला VBA प्रोग्राम देखने जा रहे हैं। अपने प्रोग्राम को पढ़ने और प्रदर्शित करने के लिए हमें एक ऑब्जेक्ट की आवश्यकता होती है। VBA में वह ऑब्जेक्ट या माध्यम Msg में होता हैBox.

  • सबसे पहले “Sub” लिखें और फिर अपना “प्रोग्राम नाम” (Guru99)
  • संदेश में जो कुछ भी आप प्रदर्शित करना चाहते हैं उसे लिखेंBox (गुरु99-सीखना मजेदार है)
  • End Sub द्वारा कार्यक्रम समाप्त करें

एक्सेल में VBA का उपयोग करें

चरण 4) संपादक के शीर्ष पर हरे रंग के रन बटन पर क्लिक करें

अगले चरण में आपको एडिटर मेनू के शीर्ष पर हरे रंग के रन बटन पर क्लिक करके इस कोड को चलाना होगा।

एक्सेल में VBA का उपयोग करें

चरण 5) शीट का चयन करें और “रन” बटन पर क्लिक करें

जब आप कोड चलाएँगे, तो एक और विंडो खुलेगी। यहाँ आपको वह शीट चुननी है जहाँ आप प्रोग्राम प्रदर्शित करना चाहते हैं और “रन” बटन पर क्लिक करें

एक्सेल में VBA का उपयोग करें

चरण 6) संदेश को संदेश में प्रदर्शित करेंBox

जब आप रन बटन पर क्लिक करेंगे, तो प्रोग्राम निष्पादित हो जाएगा। यह Msg में msg प्रदर्शित करेगाBox.

एक्सेल में VBA का उपयोग करें

उपरोक्त एक्सेल कोड डाउनलोड करें

सारांश

VBA का पूरा नाम: Visual Basic for Application. यह Visual Basic प्रोग्रामिंग भाषा का एक उप-घटक है जिसका उपयोग आप एक्सेल में एप्लिकेशन बनाने के लिए कर सकते हैं। VBA के साथ, आप अभी भी एक्सेल की शक्तिशाली सुविधाओं का लाभ उठा सकते हैं और उन्हें VBA में उपयोग कर सकते हैं।