2010-01-14 24 views
43

मैं VSTO डेवेलपमेंट के लिए आवश्यक टूल के साथ काफी उलझन में हूं। विशेष रूप से मैं Excel 2003/2007 दस्तावेज़ प्रोग्रामेटिक रूप से हेरफेर करना चाहता हूं। यदि आप किसी भी उत्तर से संबंधित करना चाहते हैं, तो मैंने बहुत पहले VBA किया था।वीएसटीओ विकास शुरू करना

कुछ सवाल मैं VSTO के बारे में है:

  1. मैं उपयोग कर सकते हैं विजुअल स्टूडियो 2008 एक्सप्रेस संस्करण सी # इस के लिए/C++?
  2. क्या मुझे .NET ढांचे को स्थापित करने की आवश्यकता है?
  3. क्या परिणामस्वरूप वीएसटीओ प्रोग्राम को उसी सिस्टम में चलाने के लिए Office की एक प्रति स्थापित करने की आवश्यकता है?

प्रासंगिक टूल/प्लगइन्स/आईडीई के प्रत्यक्ष लिंक की सराहना की जाएगी।

नोट: मैं पूरी तरह से VSTO और .NET के लिए नया हूं लेकिन एक ऑफिस पावर उपयोगकर्ता हूं। मुझे COM प्रोग्रामिंग के साथ अनुभव है।

उत्तर

62

हाँ, यह भ्रामक प्राप्त कर सकते हैं, विशेष रूप से छोड़ स्तरीय नामकरण सम्मेलनों, आदि अनिवार्य रूप से दिया जाता है, तो आप की आवश्यकता होगी:

  • पूर्ण संस्करण (एक्सप्रेस नहीं) दृश्य स्टूडियो और .NET संस्करण जिसे आप लक्षित कर रहे हैं।
  • वीएसटीओ रन टाइम में से एक (वीएसटीओ 2003, वीएसटीओ 2005, वीएसटीओ 2005 एसई, वीएसटीओ 2008, वीएसटीओ 2010)। आपके पूछने के लिए, VSTO 2005 एसई शायद आपकी सबसे अच्छी शर्त है।
  • अपने ऐप को वितरित करते समय, आप और अधिक की आवश्यकता होगी, जैसे कि पीआईए और .NET संस्करण जिसे आपने लक्षित किया है। वीएसटीओ 2010 के लिए, आपको पीआईए की आवश्यकता नहीं है (केवल जो आप उपयोग कर रहे हैं उसे आपके ऐप के साथ स्वचालित रूप से पैक किया जाएगा)।

युक्तियां:

  • VSTO के लिए कार्यालय के अंदर VBE से जा रहे एक चिकनी-ish कदम आप बहुत हद तक नेट का उपयोग किया है किया जाना चाहिए। किसी भी कार्यक्रम के लिए वस्तु मॉडल की
  • VSTO संस्करणों (एक्सेल, पावरप्वाइंट , आदि) वहाँ चीजें हैं जो अलग/वस्तु की VBA संस्करण में से बेहतर हैं कर के कुछ ही अधिक तरीकों हो सकता है आदर्श। उदाहरण के लिए, के लिए बुकमार्क नियंत्रण VSTO 2008 में शब्द जैसा नहीं है जो VBA के माध्यम से एक तक पहुंच गया है।
  • आपके ऐप को वितरित करना दर्द हो सकता है। यही कारण है कि विजुअल स्टूडियो 2010 के लिए VSTO को आपके पैकेज के साथ पूर्ण इंटरऑप (पीआईए) फ़ाइलों शामिल करने के लिए की आवश्यकता नहीं है।
  • एक ही समाधान के साथ कार्यालय के विभिन्न संस्करणों पर निशाना साधते आधिकारिक तौर पर पूर्व VSTO 2010 तरीके इस समस्या के समाधान है कि कुछ लोगों को के बारे में बात कर रहे हैं के लिए समर्थित नहीं है, लेकिन आप MSFT से ज्यादा समर्थन नहीं मिलेगा इस पर।

    कुछ साइटों है कि आप पर एक नज़र रखना चाहिए रहे हैं। यह पुराना है, लेकिन को 2005 और 2005 एसई संस्करणों के बीच अंतर के बारे में पढ़ने में मददगार है। This one यह भी सभ्य है कि में 2008 संस्करण शामिल है।

  • Online resources for VSTO। यह वीएसटीओ के बारे में सीखने के लिए एक अच्छी 'कूद' साइट है।
  • Getting Started (Visual Studio Tools for Office)। यह, और यह बहन लिंक पेज, अच्छी कूद पृष्ठ हैं। यह उपयोगी नहीं है अगर आप VSTO के साथ गति के लिए आ रहे हैं, लेकिन थोड़ी देर बाद अच्छा है।
  • Can you build one add-in for multiple versions of Office?। यह पुराना है, लेकिन में से कुछ कार्यालय के कई संस्करणों के निर्माण के आसपास के मुद्दों पर चर्चा करता है।
  • This site बेहतर व्यवस्थित होता था, लेकिन मुझे हमेशा पता चला है कि वीडियो सीखने का एक बहुत तेज़ तरीका है। इनमें से अधिकतर वीडियो VSTO के एक संस्करण का उपयोग करते हैं।

अंत में, पिछले के लिए सबसे अच्छा बचाने के लिए, इस पुस्तक मैंने पढ़ा जब मैं अभी-अभी शुरुआत की गई थी और यह काफी मददगार था: VSTO for Mere Mortals(TM): A VBA Developer's Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office

+0

वाह, हत्यारा जवाब। +1 –

+0

हाँ .. विस्तार से व्याख्या करने के लिए समय निकालने के लिए धन्यवाद। मुझे यह जानकर थोड़ा दुख हुआ कि मैं हालांकि काम नहीं कर सकता हूं। – idazuwaika

+0

महान उत्तर श्री ओटाकू (हमेशा के रूप में) –

4

.NET के लिए एक एक्सेल संगत स्प्रेडशीट घटक है जो विजुअल स्टूडियो एक्सप्रेस संस्करणों के साथ काम करेगा, .NET 2.0 या उच्चतम की आवश्यकता है, Office या Excel को स्थापित करने की आवश्यकता नहीं है, और असीमित संख्या में रॉयल्टी मुक्त वितरण की अनुमति देता है ग्राहक और/या सर्वर कंप्यूटर के।

आप लाइव नमूने here देख सकते हैं और नि: शुल्क परीक्षण here डाउनलोड कर सकते हैं।

अस्वीकरण: मैं खुद SpreadsheetGear LLC

+0

.NET के लिए स्प्रेडशीट गियर बहुत अच्छा है। तो बहुत अच्छा है - हम यहां पोस्ट करने वाले लोगों को देख रहे हैं जो कुछ वाकई महान काम कर रहे हैं। अब तक मैंने जोएल, जेसी स्वतंत्रता देखी है और अब आप! –

0

आप इस Excel .NET component का उपयोग कर एक्सप्रेस संस्करण के साथ उत्कृष्टता बना सकते हैं। इसे वीएसटीओ, एडीओ या एमएस एक्सेल ऑटोमेशन की आवश्यकता नहीं है।

एक्सेल जेटसेल .NET घटक लेखन एक्सेल स्प्रेडशीट पढ़ने की अनुमति देता है। यहां आप कई Excel VB.NET and C# examples पा सकते हैं। उदाहरण के लिए सरणी से एक्सेल स्प्रेडशीट बनाने के लिए VB.NET कोड देखें:

Imports DTG.Spreadsheet 
... 
Dim WBook = New ExcelWorkbook() 
WBook.Worksheets.Add("ArrayValues") 
For i As Short = 0 To 10 
    For j As Short = 0 To 10 
     WBook.Worksheets(0).Cells[i,j].Value = arr(i,j) 
     j = j + 1 
    Next j 
    i = i + 1 
Next i 
WBook.WriteXLSX("ExcelSpreadsheet.xlsx") 
संबंधित मुद्दे