2012-07-05 46 views

回答

1

你可以通過Workbooks.Open方法做到這一點,這article提供的細節。

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); 

然後可以經由Worksheets屬性引用特定片材。

Excel.Sheets excelSheets = excelWorkbook.Worksheets; 
+0

非常感謝信息。我需要一段時間才能解決這個問題,因爲我是新手,但是我會一直報告。再次感謝。 – dwstein 2012-07-05 21:50:09

+0

+ 1毆打!!! :) – 2012-07-05 21:50:11

3

久經考驗

using System; 
using System.Windows.Forms; 
using System.IO; 
using Excel = Microsoft.Office.Interop.Excel; 

Namespace WindowsFormsApplication5 
{ 
    public partial class Form1 : Form 
    { 
     Public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 

      Microsoft.Office.Interop.Excel.Application xlexcel; 
      Microsoft.Office.Interop.Excel.Workbook xlWorkBook; 
      Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet; 

      object misValue = System.Reflection.Missing.Value; 
      xlexcel = new Excel.Application(); 

      // Open a File 
      xlWorkBook = xlexcel.Workbooks.Open("C:\\MyFile.xlsx", 0, true, 5, "", "", true, 
      Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); 

      // Set Sheet 1 as the sheet you want to work with 
      xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 

      ////////////////////////////////////////////////////////// 
      // REST OF THE CODE HERE TO INTERACT WITH THE WORKSHEET// 
      ////////////////////////////////////////////////////////// 

      //Once done close and quit Excel 
      xlWorkBook.Close(true, misValue, misValue); 
      xlexcel.Quit(); 

      releaseObject(xlWorkSheet); 
      releaseObject(xlWorkBook); 
      releaseObject(xlexcel); 
     } 

     private void releaseObject(object obj) 
     { 
      try 
      { 
       System.Runtime.InteropServices.Marshal.ReleaseComObject(obj); 
       obj = null; 
      } 
      catch (Exception ex) 
      { 
       obj = null; 
       MessageBox.Show("Unable to release the Object " + ex.ToString()); 
      } 
      finally 
      { 
       GC.Collect(); 
      } 
     } 
    } 
} 
+0

非常感謝! – dwstein 2012-07-05 23:45:51

相關問題