ExcelWriter provides two development solutions that can be used separately or together:
The 'ExcelTemplate' Object
ExcelTemplate is the main class for template-driven document generation. This object opens an ExcelWriter template file, populates it with data from a specified data source, and generates a new Excel workbook. For a quick introduction to using the 'ExcelTemplate' Object, see the Basic ExcelTemplate Tutorial.
The 'ExcelApplication' Object
ExcelApplication is the main class for pure code-based workbook generation. This class is an engine used to open, create, and write (save or stream to a browser) workbooks. A single instance of ExcelApplication can generate multiple Excel workbooks. For a basic introduction to using the 'ExcelApplication' Object, see the Basic ExcelApplication Tutorial.
The 'SharePointIntegration' Object
SharePointIntegration is a class of extension methods that allow you to more easily use ExcelWriter from within SharePoint, with support for opening and saving from SharePoint List attachments and Document Libraries as well as data binding with SharePoint Objects.
ExcelTemplate provides an intuitive high-performance way to import database values to a spreadsheet, but cannot otherwise modify a spreadsheet at runtime. ExcelApplication's rich object model allows you to modify every aspect of the spreadsheet at runtime. You can take advantage of the features of both ExcelApplication and ExcelTemplate by using them together. For example, you can use ExcelTemplate to open and populate an ExcelWriter template, then pass the populated workbook to ExcelApplication and add a chart. Or, you could generate a template spreadsheet with ExcelApplication and pass the spreadsheet to ExcelTemplate to be populated.