2010-07-09 9 views
5

मुझे अभी पता चला है कि वर्ड/एक्सेल/पावरपॉइंट में मैक्रोज़ प्रोग्राम किए जा सकते हैं। यह कमाल है क्योंकि मेरे पास स्टाइल के लिए 70 टेबल वाले वर्ड दस्तावेज़ हैं।वर्ड 2007 में वीबीए और मैक्रोज प्रोग्रामिंग के साथ मैं कहां से शुरू करूं?

मैं एक प्रोग्रामर हूं लेकिन मुझे वीबी, वीबीए या वीबी .NET नहीं पता है। मैं इन तीनों के साथ उलझन में हूँ। मैं सी # का उपयोग कर .NET प्रोग्रामिंग से परिचित हूं। अब मैं नए मैक्रोज़ लिखना चाहता हूं। मुझे कहां से शुरू करना चाहिए? वीबी, वीबीए, वीबी.नेट क्या हैं और मुझे कौन सी सीखनी चाहिए? कृपया कुछ सामग्री का सुझाव दें।

यदि मैं वर्ड 2007 के लिए सीखता हूं तो यह अन्य कार्यालय अनुप्रयोगों के जीवन में मदद करेगा Excel & पावरपॉइंट?

उत्तर

2

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

Sub Hello() 
    MsgBox "Hello World" 
End Sub 

जब आप उप में चिह्नित किया है, प्रेस F5: सबसे आसान कार्यक्रम निम्नलिखित होगा।

ऑब्जेक्ट ब्राउज़र में आपके पास तीन अलग-अलग ऑब्जेक्ट्स, गुण, फ़ंक्शन और ईवेंट होंगे। जब आप अपनी रूचि पर हमला करते हुए कुछ देखते हैं, तो शब्द VBA के लिए reference पर जाएं और इसका पता लगाएं।
[यदि लिंक परिवर्तन, आप इसे MSDN लाइब्रेरी के तहत पेड़ में पा सकते हैं> कार्यालय विकास> 2007 Microsoft Office सिस्टम> Word 2007> Word 2007 डेवलपर संदर्भ> वर्ड ऑब्जेक्ट मॉडल संदर्भ]

मैं सबसे आसान लगता है करने के लिए चीज एक समस्या को परिभाषित करें जिसे आपको निश्चित करने की आवश्यकता है और इसे किसी भी अन्य भाषा सीखने के समान प्रोग्राम करने का प्रयास करें। समस्या को आसान न बनाएं, लेकिन आप हार मानना ​​मुश्किल नहीं है।

5

यहां विभिन्न दृश्य मूल बातें की एक संक्षिप्त व्याख्या है:

  • विजुअल बेसिक 6 (VB6, या क्लासिक वीबी)
    • 1998 के आसपास जारी इस माइक्रोसॉफ्ट के मूल "विजुअल बेसिक के अंतिम यात्रा थी । " इसकी ऑब्जेक्ट उन्मुख विकास की शुरुआत है, लेकिन इसे चलाने के लिए विजुअल बेसिक रनटाइम की आवश्यकता है। कई कंपनियों ने आंतरिक व्यापार अनुप्रयोगों के लिए वीबी 6 का उपयोग किया है। यह वीबीएनईटी और .NET फ्रेमवर्क से बहुत अधिक था।
  • विजुअल बेसिक के लिए आवेदन (VBA)
    • VBA VB6 रूप में एक ही कोड बेस के शेयरों और 1996 में डेवलपर्स के लिए लाइसेंस प्राप्त करना अपने स्वयं के अनुप्रयोगों में शामिल करने के लिए उपलब्ध था। इस प्रकार माइक्रोसॉफ्ट ऑफिस में एक एम्बेडेड भाषा के रूप में वीबीए दिखाई देता है जिसका उपयोग कार्यालय के विभिन्न अनुप्रयोगों को नियंत्रित करने के लिए किया जा सकता है। यह याद रखना महत्वपूर्ण है कि वीबीए, जिसे अभी भी कार्यालय अनुप्रयोगों को कोड करने के लिए उपयोग किया जाता है, एक दशक से अधिक पुराना है और ऐसा महसूस हो सकता है जब किसी को .NET के साथ काम करने के लिए उपयोग किया जाता है।
  • विजुअल बेसिक .NET (VB.NET)
    • VB.NET VB6 से एक कट्टरपंथी प्रस्थान था।VB.NET के बाद पुनरावृत्तियों कई डेवलपर्स, VB.NET शेयरों VB6 के साथ बहुत कम और VBA बुनियादी वाक्य रचना के अलावा अन्य (जैसे VB7, VB8, आदि) क्रम में करने के लिए भेजा गया है हालांकि। कई लोग विजुअल बेसिक में एक विकास के बजाय बेसिक में एक नए विकास पर विचार करते हैं। चूंकि यह वीबीए और वीबी 6 से पूरी तरह से अलग है, इसलिए आप वीबीए में सीधे वीबी.नेट कोड का उपयोग नहीं कर सकते हैं।
    • क्योंकि वीबी.नेट कोड उसी प्रबंधित इंटरमीडिएट भाषा कोड को सी # के रूप में संकलित करता है और उसी .NET API को साझा करता है, तो आप प्रोग्रामिंग परिप्रेक्ष्य से VB6 और VB.NET की तुलना में सी # और वीबी.नेट के बीच अधिक समानता महसूस कर सकते हैं।

आप VBA में विकास का एक बहुत कुछ कर रही आशा है, मैं अत्यधिक VBA Developer's Handbook, Second Edition की सिफारिश करेंगे, Getz और गिल्बर्ट द्वारा।

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

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

5

यहाँ कुछ अच्छा जवाब हैं - मैं सुझावों में से एक अधिक सेट प्रदान करना चाहते हैं:

सबसे पहले, यदि आपके वातावरण में समर्थित है, तो आप उपयोग कर सकते हैं दृश्य स्टूडियो 2005/08/10 और करने के लिए अपने कौशल सी # "कार्यालय के लिए विजुअल स्टूडियो टूल्स" के साथ कार्यालय के खिलाफ कार्यक्रम। अधिक जानकारी के लिए यह thread देखें।

आप के बजाय (जो मैं व्यक्तिगत रूप से पसंद है क्योंकि विकास इतनी तेजी से वी.एस. की तुलना में है) VBA में तल्लीन करना चाहते हैं, इस लेख Ten Code Conversions for VBA, Visual Basic .NET, and C# जो सभी तीन भाषाओं से आप नमूने दिखाएगा के साथ शुरू करते हैं। Using Visual Basic for Applications (VBA) Every Day Is Easier Than You Think: अगली, इस वेबकास्ट देखते हैं।

तीसरा- एमएसडीएन, इस के माध्यम से पढ़ें: Getting Started with VBA in Word 2010। इसका 99% वर्ड 2007 पर लागू होता है। इस से जुड़े कई अन्य लेख हैं या आप हमेशा एक ही कूद पृष्ठ के रूप में Office VBA Developer Center के मुख्य पृष्ठ पर जा सकते हैं।

तो संभवतः यह सीधे प्रोग्राम शुरू करने का समय है। देखें कि चीजें कैसे काम करती हैं, शब्द Object Model आदि सीखें। आप हमेशा word-vba टैग के तहत SO को ब्राउज़ कर सकते हैं यह देखने के लिए कि अन्य लोग क्या करने का प्रयास कर रहे हैं और उत्तर।

+1

+1 अच्छा लिंक। आपको विजुअल बेसिक के आसपास अपना रास्ता पता है। क्या आपके पास इस पर कोई संकेत है? : http://stackoverflow.com/questions/2551634/visual-studio-macro-getting-started-copy-a-definition-from-cpp-to-h – Default

+0

@ माइकल: धन्यवाद। दुर्भाग्य से मैं इस पर रूपांतरित करने के तरीके के बारे में नहीं जानता - मैं हमेशा इसे स्वयं को एक वी-वीबी रूपांतरण के लिए चाहता हूं, हालांकि यह अविश्वसनीय रूप से सहायक होगा। –

+0

एक दिन मैं समय लेता हूं और कुछ लिखता हूं (और वहां पोस्ट करता हूं) हेहे। फिर भी धन्यवाद :) – Default