Skip to content

Header and Footer

Mats Alm edited this page Jan 19, 2024 · 13 revisions

Headers and Footers of printed worksheets are set via the ExcelWorksheet.HeaderFooter property.

Set a header

If you want the same header when printing the worksheet, use the ExcelWorksheet.HeaderFooter.OddHeader property.

using(var package = new ExcelPackage())
{
   var sheet = package.Workbook.Worksheets.Add("Sheet1");
   // add a logo to upper left corner
   using(var fs = new FileStream(@"c:\images\myLogo.jpg", FileMode.Open))
   {
      var drawing = sheet.HeaderFooter.OddHeader.InsertPicture(fs, ePictureType.Jpg, PictureAlignment.Left);
      // you can use the drawing instance to change Height, Width, etc.
   }
   // add todays date to the upper right corner
   sheet.HeaderFooter.OddHeader.RightAlignedText = ExcelHeaderFooter.CurrentDate;
}

HeaderFooter1

OddHeader and EvenHeader

When setting values both ExcelWorksheet.HeaderFooter.OddHeader and ExcelWorksheet.HeaderFooter.EvenHeader these will be used on every second page respectively, starting with OddHeader. See example below

// for odd page numbers - add a logo to upper left corner
using var fs1 = new FileStream(imgPath1, FileMode.Open);
sheet.HeaderFooter.OddHeader.InsertPicture(fs1, ePictureType.Jpg, PictureAlignment.Left);

// for even page numbers - add a logo to upper left corner
using var fs2 = new FileStream(imgPath2, FileMode.Open);
sheet.HeaderFooter.EvenHeader.InsertPicture(fs2, ePictureType.Jpg, PictureAlignment.Right);


sheet.HeaderFooter.OddHeader.RightAlignedText = ExcelHeaderFooter.CurrentDate;
sheet.HeaderFooter.EvenHeader.LeftAlignedText = ExcelHeaderFooter.CurrentDate;

See also

EPPlus wiki

Versions

Worksheet & Ranges

Styling

Import/Export data

Formulas and filters

Charts & Drawing objects

Tables & Pivot Tables

VBA & Protection

Clone this wiki locally