如何使用c#在工作簿中打开相应的Excel工作表

时间:2013-07-11 11:25:03

标签: c# excel

我的代码打开了Excel的第一张表。我的目标是打开在组合框中选择的工作表。有没有人可以帮我找到解决方案:

我的代码:

 string currsheet = comboBox1.SelectedItem.ToString();
 Microsoft.Office.Interop.Excel.Application xap = new Microsoft.Office.Interop.Excel.Application();
 xap.Visible = true;
 Microsoft.Office.Interop.Excel.Workbook wk = xap.Workbooks.Open(path3,0, false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
 Microsoft.Office.Interop.Excel.Sheets excelsheet = wk.Worksheets;
 Microsoft.Office.Interop.Excel.Worksheet wsh = (Worksheet)excelsheet.get_Item(currsheet);

1 个答案:

答案 0 :(得分:2)

按工作表名称

Microsoft.Office.Interop.Excel.Worksheet wsh = (Worksheet)excelsheet["SheetName"];

按索引(从1开头 - 第一张)

Microsoft.Office.Interop.Excel.Worksheet wsh = (Worksheet)excelsheet[1];

只需在组合框中使用其中一个值即可。 如果要使用可用工作表填充组合框,可以通过Worksheets

进行操作
foreach (Worksheet Sh in excelsheet)
{
    Combobox.Items.Add(Sh.Name); 
}

然后,组合框选择的值将是一个工作表名称,您可以通过:

Microsoft.Office.Interop.Excel.Worksheet wsh = (Worksheet)excelsheet[Combobox.SelectedValue]; //I'm not sure if combobox value is got like this, but the excel part is ok.