मैं वर्तमान में गतिशील टाइपिंग के बारे में लिख रहा हूं, और मैं एक्सेल इंटरऑप का एक उदाहरण दे रहा हूं। मैंने पहले ही कोई ऑफिस इंटरऑप नहीं किया है, और यह दिखाता है। सी # 4 के लिए MSDN Office Interop tutorial_Worksheet
इंटरफ़ेस का उपयोग करता है, लेकिन Worksheet
इंटरफ़ेस भी है। मुझे नहीं पता कि अंतर क्या है।एक्सेल इंटरऑप: _ वर्कशीट या वर्कशीट?
मेरे बेतुका सरल डेमो ऐप (नीचे दिखाया गया) में या तो ठीक काम करता है - लेकिन यदि सर्वोत्तम अभ्यास एक या दूसरे को निर्देशित करता है, तो मैं इसे उचित रूप से उपयोग करना चाहता हूं।
using System;
using System.Linq;
using Excel = Microsoft.Office.Interop.Excel;
class DynamicExcel
{
static void Main()
{
var app = new Excel.Application { Visible = true };
app.Workbooks.Add();
// Can use Excel._Worksheet instead here. Which is better?
Excel.Worksheet workSheet = app.ActiveSheet;
Excel.Range start = workSheet.Cells[1, 1];
Excel.Range end = workSheet.Cells[1, 20];
workSheet.get_Range(start, end).Value2 = Enumerable.Range(1, 20)
.ToArray();
}
}
मैं कॉम या कार्यालय अंतर में एक पूर्ण गहन कर रही है, बस सी # 4 की नई सुविधाओं पर प्रकाश डाला से बचने के लिए कोशिश कर रहा हूँ - लेकिन मैं कुछ भी सच में, सच गूंगा करने के लिए नहीं करना चाहती।
(वास्तव में कुछ भी हो सकता है, वास्तव में ऊपर दिए गए कोड में वास्तव में गूंगा हो सकता है, इस मामले में कृपया मुझे बताएं। "ए 1: टी 1" की जगह अलग-अलग प्रारंभ/अंत कोशिकाओं का उपयोग जानबूझकर है - यह देखना आसान है यह वास्तव में 20 कोशिकाओं की एक श्रृंखला है। कुछ और शायद आकस्मिक है।)
तो, क्या मुझे _Worksheet
या Worksheet
का उपयोग करना चाहिए, और क्यों?
जॉन, उत्कृष्ट जवाब के अलावा यहां दिया जा रहा, मैं इसे जोड़ता हूं, आम तौर पर, इंटरऑप के माध्यम से एक्सेल के साथ काम करते समय कक्षा के नाम का उपयोग करें क्योंकि यह आमतौर पर एक्सेल में दिखाई देता है। इसका मतलब है '_Worksheet' के बजाय 'वर्कशीट' का उपयोग करें, और 'एप्लिकेशन क्लास' के बजाय 'एप्लिकेशन' का उपयोग करें। (यहां एक चर्चा बताती है कि 'एप्लिकेशन क्लास' का उपयोग क्यों न करें: http://blogs.msdn.com/ptorr/archive/2004/02/05/67872.aspx।) यदि आप एक्सेल ऑब्जेक्ट मॉडल से परिचित नहीं हैं COM के संपर्क में आने के बाद, यह मुश्किल हो सकता है, लेकिन मुझे लगता है कि यह ज्यादातर समय स्पष्ट होना चाहिए। –
सौभाग्य से मैं कार्यालय के साथ * बहुत * छोटा कर रहा हूं - वास्तव में बस नई सुविधाओं को दिखाने की कोशिश कर रहा हूं। यद्यपि लिंक के लिए बहुत बहुत धन्यवाद - बहुत उपयोगी! –
मुझे खेद है, लेकिन पूछना है - सी # 4 की नई सुविधा क्या है जिसे आप हाइलाइट कर रहे हैं? – Oskar