C# 设置excel打印页面的默认值为Print onBoth Sides
时间: 2024-03-17 21:41:53 浏览: 15
你可以使用`Excel`对象模型中的`PageSetup`属性来设置打印页面的属性,例如打印属性,然后将其应用于所有工作表。以下是一个示例代码,将页面打印属性设置为“双面打印”:
```csharp
using Excel = Microsoft.Office.Interop.Excel;
// ...
// 创建Excel应用程序对象
Excel.Application excelApp = new Excel.Application();
// 打开工作簿
Excel.Workbook workbook = excelApp.Workbooks.Open("Workbook1.xlsx");
// 设置页面打印属性
Excel.PageSetup pageSetup = workbook.ActiveSheet.PageSetup;
pageSetup.PrintQuality = 600;
pageSetup.PrintTitleRows = "$1:$1";
pageSetup.PrintTitleColumns = "";
pageSetup.PrintArea = pageSetup.Range["A1:C3"];
pageSetup.PrintComments = Excel.XlPrintLocation.xlPrintSheetEnd;
pageSetup.LeftHeader = "&\"Arial,Italic\"&12Left Header";
pageSetup.CenterHeader = "&\"Arial,Bold\"&16Center Header";
pageSetup.RightHeader = "&\"Arial,Regular\"&10Right Header";
pageSetup.LeftFooter = "&\"Times New Roman,Bold\"&12Left Footer";
pageSetup.CenterFooter = "&\"Times New Roman,Bold\"&12Center Footer";
pageSetup.RightFooter = "&\"Times New Roman,Bold\"&12Right Footer";
pageSetup.Orientation = Excel.XlPageOrientation.xlLandscape;
pageSetup.PaperSize = Excel.XlPaperSize.xlPaperLetter;
pageSetup.PrintErrors = Excel.XlPrintErrors.xlPrintErrorsDisplayed;
pageSetup.ScaleWithDocHeaderFooter = false;
pageSetup.AlignMarginsHeaderFooter = true;
// 设置双面打印
pageSetup.PrintOnBothPages = true;
// 应用设置到所有工作表
foreach (Excel.Worksheet worksheet in workbook.Worksheets)
{
worksheet.PageSetup.PrintQuality = pageSetup.PrintQuality;
worksheet.PageSetup.PrintTitleRows = pageSetup.PrintTitleRows;
worksheet.PageSetup.PrintTitleColumns = pageSetup.PrintTitleColumns;
worksheet.PageSetup.PrintArea = pageSetup.PrintArea;
worksheet.PageSetup.PrintComments = pageSetup.PrintComments;
worksheet.PageSetup.LeftHeader = pageSetup.LeftHeader;
worksheet.PageSetup.CenterHeader = pageSetup.CenterHeader;
worksheet.PageSetup.RightHeader = pageSetup.RightHeader;
worksheet.PageSetup.LeftFooter = pageSetup.LeftFooter;
worksheet.PageSetup.CenterFooter = pageSetup.CenterFooter;
worksheet.PageSetup.RightFooter = pageSetup.RightFooter;
worksheet.PageSetup.Orientation = pageSetup.Orientation;
worksheet.PageSetup.PaperSize = pageSetup.PaperSize;
worksheet.PageSetup.PrintErrors = pageSetup.PrintErrors;
worksheet.PageSetup.ScaleWithDocHeaderFooter = pageSetup.ScaleWithDocHeaderFooter;
worksheet.PageSetup.AlignMarginsHeaderFooter = pageSetup.AlignMarginsHeaderFooter;
worksheet.PageSetup.PrintOnBothPages = pageSetup.PrintOnBothPages;
}
// 关闭工作簿和Excel应用程序对象
workbook.Close(true);
excelApp.Quit();
```
在上面的示例代码中,我们使用`PageSetup`属性设置了页面打印属性,例如打印质量、打印范围、页眉和页脚、页面方向和纸张尺寸。然后,我们使用`PrintOnBothPages`属性设置打印属性为双面打印。最后,我们使用`foreach`循环将这些设置应用于所有工作表。