复制到新工作簿的 EPPlus 工作表在 Excel 中打开时保持选中状态
EPPlus Worksheets copied into a new workbook remain selected when opened in Excel
这是问题所在:
我将工作表从另一个工作簿复制到一个新的 Excel 包中并保存该新包。
当我在 Excel 中打开该包时,复制的工作表显示为已选中。
请参阅此处 OutFile.xlsx:https://1drv.ms/u/s!Aoz3mqCqpAZbjldtXKcClJkstXQK?e=yL4vQR
如何在保存工作簿之前取消选择 EPPlus 中的所有工作表?
我正在使用 EPPlus v4.5.3.3
下面是说明问题的代码:
ExcelPackage xlPackage = new ExcelPackage();
ExcelWorkbook xlWorkbook = xlPackage.Workbook;
xlWorkbook.Worksheets.Add("AddedSheet1");
xlWorkbook.Worksheets.Add("AddedSheet2");
xlWorkbook.Worksheets.Add("AddedSheet3");
ExcelPackage sourcePackage = new ExcelPackage(new FileInfo(@"c:\temp\AnyBlankExcelFile.xlsx"));
ExcelWorksheet sheet1 = sourcePackage.Workbook.Worksheets["Sheet1"];
xlWorkbook.Worksheets.Add("Copied1", sheet1);
xlWorkbook.Worksheets.Add("Copied2", sheet1);
xlWorkbook.Worksheets.Add("Copied3", sheet1);
xlWorkbook.Worksheets.Add("AddedSheet4");
xlPackage.SaveAs(new FileInfo(@"C:\temp\OutFile.xlsx"));
xlPackage.Dispose();
sourcePackage.Dispose();
似乎 epplus 默认选择复制的标签。只需要获取可以使用 Add
调用完成的工作表并告诉它取消选择:
var c1 = xlWorkbook.Worksheets.Add("Copied1", sheet1);
c1.View.SetTabSelected(false);
var c2 = xlWorkbook.Worksheets.Add("Copied2", sheet1);
c2.View.SetTabSelected(false);
var c3 = xlWorkbook.Worksheets.Add("Copied3", sheet1);
c3.View.SetTabSelected(false);
这是问题所在:
我将工作表从另一个工作簿复制到一个新的 Excel 包中并保存该新包。 当我在 Excel 中打开该包时,复制的工作表显示为已选中。
请参阅此处 OutFile.xlsx:https://1drv.ms/u/s!Aoz3mqCqpAZbjldtXKcClJkstXQK?e=yL4vQR
如何在保存工作簿之前取消选择 EPPlus 中的所有工作表?
我正在使用 EPPlus v4.5.3.3
下面是说明问题的代码:
ExcelPackage xlPackage = new ExcelPackage();
ExcelWorkbook xlWorkbook = xlPackage.Workbook;
xlWorkbook.Worksheets.Add("AddedSheet1");
xlWorkbook.Worksheets.Add("AddedSheet2");
xlWorkbook.Worksheets.Add("AddedSheet3");
ExcelPackage sourcePackage = new ExcelPackage(new FileInfo(@"c:\temp\AnyBlankExcelFile.xlsx"));
ExcelWorksheet sheet1 = sourcePackage.Workbook.Worksheets["Sheet1"];
xlWorkbook.Worksheets.Add("Copied1", sheet1);
xlWorkbook.Worksheets.Add("Copied2", sheet1);
xlWorkbook.Worksheets.Add("Copied3", sheet1);
xlWorkbook.Worksheets.Add("AddedSheet4");
xlPackage.SaveAs(new FileInfo(@"C:\temp\OutFile.xlsx"));
xlPackage.Dispose();
sourcePackage.Dispose();
似乎 epplus 默认选择复制的标签。只需要获取可以使用 Add
调用完成的工作表并告诉它取消选择:
var c1 = xlWorkbook.Worksheets.Add("Copied1", sheet1);
c1.View.SetTabSelected(false);
var c2 = xlWorkbook.Worksheets.Add("Copied2", sheet1);
c2.View.SetTabSelected(false);
var c3 = xlWorkbook.Worksheets.Add("Copied3", sheet1);
c3.View.SetTabSelected(false);