通过C#获取工作表名称的Excel工作表参考

时间:2010-03-22 09:38:54

标签: c# excel office-interop

我目前正在使用以下C#代码获取Excel工作表的句柄:

Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(15);
//Get the worksheet "SubSignOff" number

使用工作表名称"SubSignOff"

是否可以获得相同的效果?

1 个答案:

答案 0 :(得分:30)

不是使用Excel.Workbook.Sheets集合,而是更容易访问Excel.Workbook.Worksheets集合,这样您就可以利用早期绑定。

在您的情况下,它可能类似于以下内容:

Excel.Application excelApp = new Excel.Application();
excelApp.Visible = true;

Excel.Workbook workbook = excelApp.Workbooks.Open("C:\MyWorkbook.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);

// The key line:
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets["SubSignOff"];

希望这会有所帮助......