2010-01-06 14 views
10

मेरे पास 5 वर्कशीट्स के साथ एक एक्सेल फ़ाइल है और मैं इसे #खोलने के लिए चाहता हूं और जब इसे खोला जाता है तो मैं शीट नंबर 3 को सक्रिय करना चाहता हूं।एक विशिष्ट वर्कशीट पर खुली एक्सेल फ़ाइल

मैं यह कैसे कर सकता हूं?

+0

आप एक्सेल स्वचालित करना चाहते हैं या आप अपने आवेदन में एक ग्रिड में डेटा को प्रदर्शित करना चाहते हैं हैं? या कुछ और? –

उत्तर

23
इस तरह

:

using Excel; 

Excel.Application excelApp = new Excel.ApplicationClass(); 

    // if you want to make excel visible to user, set this property to true, false by default 
    excelApp.Visible = true; 

// open an existing workbook 
string workbookPath = "c:/SomeWorkBook.xls"; 
    Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(workbookPath, 
     0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "", 
     true, false, 0, true, false, false); 



// get all sheets in workbook 
    Excel.Sheets excelSheets = excelWorkbook.Worksheets; 

    // get some sheet 
string currentSheet = "Sheet1"; 
    Excel.Worksheet excelWorksheet = 
     (Excel.Worksheet)excelSheets.get_Item(currentSheet); 

// access cell within sheet 
    Excel.Range excelCell = 
     (Excel.Range)excelWorksheet.get_Range("A1", "A1"); 

आशा इस मदद करता है

MDSN जानकारी here

+0

यह केवल काम करता है। दृश्य = सही। इसके बारे में कैसे। दृश्यमान = झूठा? – Denis

3

क्या कुछ इस तरह के बारे में: (untested)

//using Excel = Microsoft.Office.Interop.Excel; 

Excel.ApplicationClass app = new Excel.ApplicationClass(); 
Excel.Workbook workbook = app.Workbooks.Open("YourFile.xls", 
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
    Type.Missing, Type.Missing, Type.Missing, Type.Missing); 
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Sheets["Number 3"]; 
worksheet.Activate(); 
+0

यह मेरे लिए काम किया :) – Somebody

+0

केवल तभी काम करता है। दृश्य = सही – Denis

+0

क्या कोई कृपया पुष्टि कर सकता है @ डेनिस – Si8

1

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

तुरंत Excel.Range आरंभ करने से पहले निम्न कथन शामिल करने पर विचार ...

// सक्रिय सेट चादर

excelWorksheet.Activate()

इसके अलावा: तदनुसार रेंज lect एक्सेल प्रारंभ करने के तुरंत बाद निम्नलिखित कथन पर विचार करें। श्रेणी ...

// एक्सेल

में सक्रिय श्रेणी सेट करें 0

excelCell.Activate()

0
public static Workbook openExternalWorkBook(String fileName) 
    { 
     Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();    
     excel.Visible = false; 
     return excel.Workbooks.Open(fileName, false); 
    } 
संबंधित मुद्दे