【发布时间】:2020-03-12 12:01:04
【问题描述】:
我正在使用 C# Windows 窗体。
目标:
如果我有多个 Excel 表格。
例如,"Sheet1, Sheet2, Sheet3, TestSheet1, TestSheet2"
如何获取特定的工作表名称,例如["Sheet2"] 并将其另存为新的 Excel 工作簿?
这是我目前所拥有的:
按钮点击:
private void button1_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook excelBook = excelApp.Workbooks.Open("C:\Users\LV98\Desktop\Test C#\excel_file.xlsx");
excelBook.Worksheets.Copy("Sheet2");
}
更新:
这就是我要去的地方。
private void button1_Click(object sender, EventArgs e)
{
Excel.Application excelApp;
string fileTarget = "C:\\Users\\LV98\\Desktop\\Test C#\\template.xlsx";
string fileTemplate = "C:\\Users\\LV98\\Desktop\\Test C#\\excel_file.xlsx";
excelApp = new Excel.Application();
Excel.Workbook wbTarget;
Excel.Worksheet sh;
//Create target workbook
wbTarget = excelApp.Workbooks.Open(fileTemplate);
//Fill target workbook
//Open the template sheet
sh = wbTarget.Worksheets["Sheet2"];
sh.Copy(wbTarget.Worksheets[1]);
//Save file
wbTarget.SaveAs(fileTarget);
wbTarget.Close(true);
excelApp.Quit();
}
当我打开新的 excel 文件时,它会打开“Sheet2”,这正是我所追求的!但唯一的问题是,还保存了其他工作表。我将考虑重命名新工作表 - 并删除其余工作表。
【问题讨论】:
-
您要保存所有工作表还是只保存特定工作表?
-
@UdhayTitus 特定工作表