C#excel工作簿saveAs()方法中断了PageSetup设置

时间:2011-10-04 08:04:42

标签: c# excel interop

我正在使用C#从Excel的 Template.xlsm 工作簿中生成新文件。此工作簿的某些工作表具有pagesetup设置。在使用不同的名称保存此文件后,

 var pathToSave = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath) + "\\New file#" + fileName;
 _eWorkbook.SaveAs(pathToSave, XlFileFormat.xlOpenXMLWorkbookMacroEnabled);

其中fileName只是一个数字,页面设置设置会发生变化。我没有在我的代码中更改它,我使用范围和值。

1 个答案:

答案 0 :(得分:0)

Excel即使其中包含私人打印机设置也会保存整个打印机设置。现在,一旦在MSExcel中打开工作簿,上次使用printer1保存但现在打印机是printer2,则新工作簿将包含printer2的设置。这也会重新计算页面布局,因为列宽取决于Excel中的打印机设置。

此外,您应该能够从Excel UI重现问题,而不仅仅是从API。