Save as template(.xltx, .xltm)¶
EPPlus can save packages as an Excel template instead of an standard workbook.
What is an Excel Template?¶
An excel template(.xltx) is a template for new workbooks. When opening the template workbook, Excel creates a new copied workbook from the template while the original .xltx file remains unchanged.
Saving as template¶
Lets show an example. Set the SaveAsTemplate property on the package
using (var package = new ExcelPackage())
{
package.SaveAsTemplate = true;
package.SaveAs(new FileInfo(@"c:\workbooks\InvoiceTemplate.xltx"));
}
Loading a template¶
SaveAsTemplate is false by default, also when the loaded file is a template. Loading an .xltx and saving it again therefore produces a standard workbook, which mirrors how Excel handles templates. Set SaveAsTemplate to true if you want to keep the template format:
using (var package = new ExcelPackage(new FileInfo(@"c:\temp\InvoiceTemplate.xltx")))
{
package.SaveAsTemplate = true; // keep it a template
package.Save();
}
Note on file extensions¶
SaveAsTemplate controls the content type inside the package; the file name is up to you. Use a matching extension (.xltx / .xltm) so that Excel and other tools handle the file as expected.