जानें VBA मैक्रो कोडिंग वर्ड 2007

इस पाठ्यक्रम का लक्ष्य ऐसे लोगों की मदद करना है जिन्होंने एक लिखना सीखने से पहले कभी कोई कार्यक्रम नहीं लिखा है। कोई कारण नहीं है कि कार्यालय के कर्मचारी, गृहिणी, पेशेवर इंजीनियर और पिज्जा डिलीवरी व्यक्ति तेजी से काम करने के लिए अपने स्वयं के हाथ से तैयार किए गए कस्टम कंप्यूटर प्रोग्रामों का लाभ उठाने में सक्षम नहीं होना चाहिए होशियार। यह काम करने के लिए 'पेशेवर प्रोग्रामर' (जो भी हो) नहीं लेना चाहिए। आप जानते हैं कि किसी और से बेहतर होने की क्या जरूरत है। आपके द्वारा इसे स्वयं ही किया जा सकता है!

(और मैं इसे किसी ऐसे व्यक्ति के रूप में कहता हूं जिसने कई वर्षों तक अन्य लोगों के लिए कार्यक्रम लिखने में खर्च किया है... 'पेशेवर'।)

उस के साथ कहा, यह कंप्यूटर का उपयोग कैसे करें में एक कोर्स नहीं है।

यह पाठ्यक्रम मानता है कि आप जानते हैं कि लोकप्रिय सॉफ़्टवेयर का उपयोग कैसे किया जाता है और विशेष रूप से, आपके पास Microsoft Word 2007 आपके कंप्यूटर पर स्थापित है। आपको मूल कंप्यूटर कौशल पता होना चाहिए जैसे फ़ाइल फ़ोल्डर (यानी, निर्देशिका) कैसे बनाएं और फ़ाइलों को कैसे स्थानांतरित करें और कॉपी करें। लेकिन अगर आपने हमेशा सोचा है कि वास्तव में कंप्यूटर प्रोग्राम क्या था, तो यह ठीक है। हम आपको दिखाएंगे।

instagram viewer

Microsoft Office सस्ता नहीं है। लेकिन आप उस महंगे सॉफ़्टवेयर से अधिक मूल्य प्राप्त कर सकते हैं जो आपने पहले ही स्थापित किया है। यह एक बड़ा कारण है जिसका हम उपयोग करते हैं मूल दृश्य Microsoft Office के साथ अनुप्रयोग या VBA के लिए। लाखों हैं जिनके पास यह है और एक मुट्ठी भर (शायद कोई नहीं) जो सब कुछ का उपयोग करता है वह कर सकता है।

इससे पहले कि हम आगे बढ़ें, हालांकि, मुझे वीबीए के बारे में एक और बात समझाने की जरूरत है। फरवरी 2002 में, Microsoft ने अपनी पूरी कंपनी के लिए पूरी तरह से नई तकनीक के आधार पर 300 बिलियन डॉलर का दांव लगाया। उन्होंने इसे .NET कहा। तब से, Microsoft अपने पूरे प्रौद्योगिकी आधार को VB.NET में स्थानांतरित कर रहा है। VBA बहुत ही अंतिम प्रोग्रामिंग टूल है जो अभी भी VB6 का उपयोग करता है, कोशिश की गई और सही तकनीक जो VB.NET से पहले इस्तेमाल की गई थी। (आप इस VB6 स्तर की तकनीक का वर्णन करने के लिए "COM आधारित" वाक्यांश देखेंगे।)

VSTO और VBA

Microsoft ने Office 2007 के लिए VB.NET प्रोग्राम लिखने का एक तरीका बनाया है। इसे ऑफिस (वीएसटीओ) के लिए विजुअल स्टूडियो टूल्स कहा जाता है। VSTO के साथ समस्या यह है कि आपको Visual Studio Professional का उपयोग करना और सीखना है। Excel स्वयं अभी भी COM आधारित है और .NET प्रोग्राम को इंटरफ़ेस (PIA, प्राथमिक इंटरोप असेंबली) कहा जाता है।

इसलिए... जब तक Microsoft अपने कार्य को एक साथ नहीं करता है और आपको प्रोग्राम लिखने का एक तरीका देता है जो वर्ड के साथ काम करेगा और आपको आईटी विभाग में शामिल नहीं करेगा, VBA मैक्रोज़ अभी भी जाने का रास्ता है।

VBA का उपयोग करने का एक और कारण यह है कि यह वास्तव में एक 'पूरी तरह से बेक किया हुआ' है (आधा बेक नहीं किया गया है) सॉफ्टवेयर विकास पर्यावरण है कि प्रोग्रामर द्वारा अस्तित्व में सबसे परिष्कृत प्रणालियों में से कुछ बनाने के लिए वर्षों से उपयोग किया गया है। इससे कोई फर्क नहीं पड़ता कि आपकी प्रोग्रामिंग जगहें कितनी ऊंची हैं। Visual Basic में आपको वहां ले जाने की शक्ति है।

स्थूल क्या है?

आपने डेस्कटॉप एप्लिकेशन का उपयोग किया हो सकता है जो पहले मैक्रो भाषा में कहा जाता है का समर्थन करता है। मैक्रों पारंपरिक रूप से सिर्फ एक नाम के साथ समूहबद्ध की-बोर्ड क्रियाओं की स्क्रिप्ट हैं ताकि आप उन सभी को एक साथ निष्पादित कर सकें। यदि आप हमेशा अपने "MyDiary" दस्तावेज़ को खोलकर, आज की तारीख में प्रवेश करते हैं, और "प्रिय डायरी," शब्द टाइप करके दिन की शुरुआत करते हैं, तो - आपके कंप्यूटर को आपके लिए ऐसा क्यों नहीं करने देना चाहिए? अन्य सॉफ़्टवेयर के अनुरूप होने के लिए, Microsoft VBA को एक मैक्रो भाषा भी कहता है। लेकिन ऐसा नहीं है। यह बहुत अधिक है।

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

हालांकि साधारण कीबोर्ड मैक्रोज़, प्रोग्रामर बनाने के लिए VBA मैक्रो रिकॉर्डर बहुत उपयोगी है पता चला है कि यह और भी अधिक उपयोगी है उन्हें और अधिक परिष्कृत कार्यक्रमों में एक शुरुआत देने के लिए। यही हम करने जा रहे हैं।

शुरू माइक्रोसॉफ्ट वर्ड 2007 एक रिक्त दस्तावेज़ के साथ और एक कार्यक्रम लिखने के लिए तैयार हो जाओ।

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

Word 2007 में Visual Basic प्रोग्राम लिखने के लिए सबसे पहले आपको जो कुछ करना है, वह है Visual Basic खोजें! Word 2007 में डिफ़ॉल्ट का उपयोग किया गया रिबन प्रदर्शित नहीं करना है। को जोड़ने के लिए डेवलपर टैब, पहले क्लिक करें कार्यालय बटन (ऊपरी बाएँ कोने में लोगो) और फिर क्लिक करें शब्द विकल्प. क्लिक करें रिबन में डेवलपर टैब दिखाएं और फिर क्लिक करें ठीक.

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

क्लिक करें रिकॉर्ड मैक्रो. अपने मैक्रो को नाम दें: AboutVB1 उस नाम को टाइप करके मैक्रो नाम पाठ बॉक्स। अपने मैक्रो को संग्रहीत करने के लिए स्थान के रूप में अपने वर्तमान दस्तावेज़ का चयन करें और ठीक पर क्लिक करें। नीचे दिए गए उदाहरण देखें।

(नोट: यदि आप चुनते हैं सभी दस्तावेज (Normal.dotm) ड्रॉप डाउन मेनू से, यह परीक्षण VBA प्रोग्राम, वास्तव में वर्ड का एक हिस्सा बन जाएगा क्योंकि यह तब आपके द्वारा वर्ड में बनाए गए प्रत्येक दस्तावेज़ के लिए उपलब्ध हो जाएगा। यदि आप किसी विशिष्ट दस्तावेज़ में केवल VBA मैक्रो का उपयोग करना चाहते हैं, या यदि आप इसे किसी और को भेजना चाहते हैं, तो दस्तावेज़ के भाग के रूप में मैक्रो को सहेजना बेहतर होगा। Normal.dotm डिफ़ॉल्ट है इसलिए आपको इसे बदलना होगा।)

मैक्रो रिकॉर्डर चालू होने पर, "हैलो वर्ल्ड" नामक टेक्स्ट टाइप करें। अपने वर्ड डॉक्यूमेंट में। (माउस पॉइंटर टेप की कारतूस की एक छोटी तस्वीर में बदल जाएगा ताकि यह दिखाया जा सके कि कीस्ट्रोक रिकॉर्ड किए जा रहे हैं।)

(नोट: हैलो वर्ल्ड लगभग "फर्स्ट प्रोग्राम" के लिए आवश्यक है क्योंकि शुरुआती के लिए बहुत पहले प्रोग्रामिंग मैनुअल कंप्यूटर भाषा "सी" इसका उपयोग करो। यह तब से एक परंपरा रही है।)

क्लिक करें रिकॉर्डिंग बंद करें. Word बंद करें और नाम का उपयोग करके दस्तावेज़ सहेजें: AboutVB1.docm. आपको a सेलेक्ट करना है शब्द मैक्रो-सक्षम दस्तावेज़ वहाँ से टाइप के रुप में सहेजें ड्रॉप डाउन।

बस! अब आपने Word VBA प्रोग्राम लिखा है। आइए देखें कि यह कैसा दिखता है!

एक VBA कार्यक्रम क्या है, इसे समझना

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

VBA और सुरक्षा

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

यह देखने के लिए कि मैक्रो रिकॉर्डर ने क्या बनाया है (साथ ही VBA को शामिल करने वाली अधिकांश अन्य चीजें करने के लिए), आपको Visual Basic Editor शुरू करने की आवश्यकता है। डेवलपर रिबन के बाईं ओर ऐसा करने के लिए एक आइकन है।

सबसे पहले, बाएं हाथ की खिड़की पर ध्यान दें। इसे कहते हैं प्रोजेक्ट एक्सप्लोरर और यह उच्च स्तरीय वस्तुओं के साथ समूह बनाता है (हम उनके बारे में अधिक बात करेंगे) जो आपके विज़ुअल बेसिक प्रोजेक्ट का हिस्सा हैं।

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

शब्द दस्तावेज़ एक VBA कंटेनर के रूप में

हर विज़ुअल बेसिक प्रोग्राम किसी न किसी तरह के फ़ाइल 'कंटेनर' में होना चाहिए। Word 2007 VBA मैक्रोज़ के मामले में, वह कंटेनर एक '(.docm') वर्ड डॉक्यूमेंट है। वर्ड VBA प्रोग्राम वर्ड के बिना नहीं चल सकता है और आप स्टैंडअलोन ('.exe') विजुअल बेसिक प्रोग्राम नहीं बना सकते हैं, जैसे आप Visual Basic 6 या विजुअल बेसिक .NET कर सकते हैं। लेकिन फिर भी आप पूरी दुनिया को छोड़ सकते हैं।

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

कार्यक्रम स्रोत सामान्य रूप से सबरूटीन्स की एक श्रृंखला से मिलकर बनेगा। जब आप अधिक उन्नत प्रोग्रामिंग में स्नातक होते हैं, तो आपको पता चलेगा कि अन्य चीजें सबरूटीन्स के अलावा कार्यक्रम का हिस्सा हो सकती हैं।

इस विशेष सबरूटीन का नाम दिया गया है AboutVB1. सबरूटीन हेडर को a के साथ जोड़ा जाना चाहिए अंत उप तल पर। कोष्ठक एक मानदंड सूची को पकड़ सकता है जिसमें मानों को सबरूटीन में पारित किया जा सकता है। यहां कुछ भी पारित नहीं किया जा रहा है, लेकिन उन्हें वहां रहना होगा विषय वैसे भी बयान। बाद में, जब हम मैक्रो चलाते हैं, तो हम नाम की तलाश करेंगे AboutVB1.

सबरूटीन में केवल एक वास्तविक प्रोग्राम स्टेटमेंट है:

चयन। टाइप टेक्स्ट पाठ: = "हैलो वर्ल्ड!"

वस्तुओं, विधियों और गुणों

इस कथन में तीन प्रमुख हैं:

  • एक वस्तु
  • एक विधी
  • सम्पत्ति

बयान वास्तव में "हैलो वर्ल्ड" पाठ जोड़ता है। वर्तमान दस्तावेज़ की सामग्री के लिए।

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

कार्यक्रम और दस्तावेज

हम अपने शानदार और जटिल प्रणाली है... एक कार्यक्रम के बयान से मिलकर... लेकिन अब हम इसे चलाना चाहते हैं। यहाँ है कि सभी के बारे में क्या है।

यहां एक अवधारणा सीखी जानी है जो बहुत महत्वपूर्ण है और यह अक्सर पहले टाइमर को भ्रमित करती है: के बीच का अंतर कार्यक्रम और यह दस्तावेज़. यह अवधारणा मूलभूत है।

VBA प्रोग्राम को एक होस्ट फ़ाइल में समाहित करना होता है। वर्ड में, होस्ट दस्तावेज़ है। हमारे उदाहरण में, वह है AboutVB1.docm. कार्यक्रम वास्तव में दस्तावेज़ के अंदर सहेजा गया है।

उदाहरण के लिए, यदि यह एक्सेल था, तो हम इसके बारे में बात करेंगे कार्यक्रम और यह स्प्रेडशीट. पहुँच में, द कार्यक्रम और यह डेटाबेस. स्टैंडअलोन विजुअल बेसिक विंडोज एप्लीकेशन में भी, हम ए कार्यक्रम और एक प्रपत्र.

(नोट: सभी उच्च स्तरीय कंटेनरों को "दस्तावेज़" के रूप में संदर्भित करने के लिए प्रोग्रामिंग में एक प्रवृत्ति है। यह विशेष रूप से तब होता है जब XML... एक और ऊपर और आने वाली तकनीक... उपयोग किया जा रहा है। इसे आप भ्रमित न करें। यद्यपि यह थोड़ी सी अशुद्धि है, आप "दस्तावेजों" के बारे में सोच सकते हैं कि लगभग "फाइलें" के समान हैं।)

वहां... ummmmm... अपने VBA मैक्रो को चलाने के तीन मुख्य तरीकों के बारे में।

  1. आप इसे Word दस्तावेज़ से चला सकते हैं।
    (नोट: दो उपश्रेणी उपकरण मेनू से मैक्रोज़ का चयन करने के लिए हैं या केवल Alt-F8 दबाएं। यदि आपने मैक्रो को टूलबार या कीबोर्ड शॉर्टकट में असाइन किया है, तो यह एक और तरीका है।))
  2. आप इसे रन आइकन या रन मेनू का उपयोग करके संपादक से चला सकते हैं।
  3. आप डिबग मोड में प्रोग्राम के माध्यम से एकल-चरण कर सकते हैं।

आपको इन सभी तरीकों में से प्रत्येक को केवल Word / VBA इंटरफ़ेस के साथ सहज बनने के लिए प्रयास करना चाहिए। जब आप समाप्त कर लेंगे, तो आपके पास "हैलो वर्ल्ड" के दोहराव से भरा एक पूरा दस्तावेज होगा!

वर्ड से प्रोग्राम चलाना काफी आसान है। बस क्लिक करने के बाद मैक्रो का चयन करें मैक्रो के तहत आइकन राय टैब।

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

कार्यक्रम के माध्यम से सिंगल स्टेपिंग संभवतः सबसे उपयोगी समस्या निवारण तकनीक है। यह Visual Basic संपादक से भी किया जाता है। इसे आज़माने के लिए, दबाएँ F8 या चयन करें में कदम वहाँ से डिबग मेन्यू। कार्यक्रम में पहला बयान, कार्यक्रम विषय बयान पर प्रकाश डाला गया है। F8 को दबाने से प्रोग्राम स्टेटमेंट्स को एक समय में तब तक निष्पादित किया जाता है जब तक कि प्रोग्राम समाप्त नहीं हो जाता। जब आप पाठ को दस्तावेज़ में इस तरह से जोड़ते हैं तो आप वास्तव में देख सकते हैं।

'ब्रेकप्वाइंट', 'तत्काल विंडो' में प्रोग्राम ऑब्जेक्ट्स की जांच करने और 'वॉच विंडो' के उपयोग जैसी कई अधिक परिष्कृत डिबगिंग तकनीकें हैं। लेकिन अभी के लिए, बस ध्यान रखें कि यह एक प्राथमिक डिबगिंग तकनीक है जिसे आप प्रोग्रामर के रूप में उपयोग करेंगे।

ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग

अगली कक्षा के पाठ के बारे में सब कुछ है ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग.

"Whaaaattttt!" (मैं आपको विलाप करते हुए सुनता हूं) "मैं सिर्फ कार्यक्रम लिखना चाहता हूं। मैंने कंप्यूटर वैज्ञानिक बनने के लिए साइन अप नहीं किया! "

डर नहीं! इसकी दो वजहें हैं जो एक बेहतरीन कदम है।

सबसे पहले, आज के प्रोग्रामिंग वातावरण में, आप बस वस्तु उन्मुख प्रोग्रामिंग अवधारणाओं को समझने के बिना एक प्रभावी प्रोग्रामर नहीं हो सकते हैं। यहां तक ​​कि हमारे बहुत ही सरल एक-लाइन "हैलो वर्ल्ड" कार्यक्रम में एक वस्तु, एक विधि और एक संपत्ति शामिल थी। मेरी राय में, वस्तुओं को नहीं समझना सबसे बड़ी एकल समस्या है जो प्रोग्रामर के पास है। तो हम सामने वाले जानवर का सामना करने जा रहे हैं!

दूसरा, हम इसे यथासंभव दर्द रहित बनाने जा रहे हैं। हम आपको कंप्यूटर विज्ञान शब्दजाल के भार से भ्रमित करने वाले नहीं हैं।

लेकिन इसके ठीक बाद, हम एक कोड के साथ प्रोग्रामिंग कोड लिखने के लिए वापस कूदने जा रहे हैं, जहाँ हम एक VBA मैक्रो विकसित करते हैं, जिसका आप शायद उपयोग कर सकते हैं! हम अगले पाठ में उस कार्यक्रम को थोड़ा और सही करते हैं और एक बार में आपको कई अनुप्रयोगों के साथ VBA का उपयोग कैसे शुरू करें, यह दिखा कर खत्म करते हैं।

instagram story viewer