Table of Contents

Class ExcelWorkbook

Namespace
OfficeOpenXml
Assembly
EPPlus.dll

Represents the Excel workbook and provides access to all the document properties and worksheets within the workbook.

public sealed class ExcelWorkbook : XmlHelper, IDisposable
Inheritance
ExcelWorkbook
Implements
Inherited Members
Extension Methods

Properties

CalcMode

Calculation mode for the workbook.

public ExcelCalcMode CalcMode { get; set; }

Property Value

ExcelCalcMode

CodeModule

The VBA code module if the package has a VBA project. Otherwise this propery is null. CreateVBAProject()

public ExcelVBAModule CodeModule { get; }

Property Value

ExcelVBAModule

Date1904

The date systems used by Microsoft Excel can be based on one of two different dates. By default, a serial number of 1 in Microsoft Excel represents January 1, 1900. The default for the serial number 1 can be changed to represent January 2, 1904. This option was included in Microsoft Excel for Windows to make it compatible with Excel for the Macintosh, which defaults to January 2, 1904.

public bool Date1904 { get; set; }

Property Value

bool

DefaultThemeVersion

The default version of themes to apply in the workbook

public int? DefaultThemeVersion { get; set; }

Property Value

int?

A collection of links to external workbooks and it's cached data. This collection can also contain DDE and OLE links. DDE and OLE are readonly and cannot be added.

public ExcelExternalLinksCollection ExternalLinks { get; }

Property Value

ExcelExternalLinksCollection

FormulaParserManager

Manage the formula parser. Add your own functions or replace native ones, parse formulas or attach a logger.

public FormulaParserManager FormulaParserManager { get; }

Property Value

FormulaParserManager

FullCalcOnLoad

Should Excel do a full calculation after the workbook has been loaded? This property is always true for both new workbooks and loaded templates(on load). If this is not the wanted behavior set this property to false.

public bool FullCalcOnLoad { get; set; }

Property Value

bool

HasLoadedPivotTables

Returns true if the workbook has pivot tables in any worksheet.

public bool HasLoadedPivotTables { get; }

Property Value

bool

MaxFontWidth

Max font width for the workbook This method uses GDI. If you use Azure or another environment that does not support GDI, you have to set this value manually if you don't use the standard Calibri font

public decimal MaxFontWidth { get; set; }

Property Value

decimal

Names

Provides access to named ranges

public ExcelNamedRangeCollection Names { get; }

Property Value

ExcelNamedRangeCollection

NumberFormatToTextHandler

public Func<NumberFormatToTextArgs, string> NumberFormatToTextHandler { get; }

Property Value

Func<NumberFormatToTextArgs, string>

Properties

The office document properties

public OfficeProperties Properties { get; }

Property Value

OfficeProperties

Protection

Access properties to protect or unprotect a workbook

public ExcelProtection Protection { get; }

Property Value

ExcelProtection

Styles

Package styles collection. Used internally to access style data.

public ExcelStyles Styles { get; }

Property Value

ExcelStyles

StylesXml

Provides access to the XML data representing the styles in the package.

public XmlDocument StylesXml { get; set; }

Property Value

XmlDocument

ThemeManager

Create and manage the theme for the workbook.

public ExcelThemeManager ThemeManager { get; }

Property Value

ExcelThemeManager

ThreadedCommentPersons

Represents a collection of ExcelThreadedCommentPersons in the workbook.

public ExcelThreadedCommentPersonCollection ThreadedCommentPersons { get; }

Property Value

ExcelThreadedCommentPersonCollection

VbaProject

A reference to the VBA project. Null if no project exists. Use Workbook.CreateVBAProject to create a new VBA-Project

public ExcelVbaProject VbaProject { get; }

Property Value

ExcelVbaProject

View

Access to workbook view properties

public ExcelWorkbookView View { get; }

Property Value

ExcelWorkbookView

WorkbookXml

Provides access to the XML data representing the workbook in the package.

public XmlDocument WorkbookXml { get; }

Property Value

XmlDocument

Worksheets

Provides access to all the worksheets in the workbook. Note: Worksheets index either starts by 0 or 1 depending on the Excelpackage.Compatibility.IsWorksheets1Based property. Default is 1 for .Net 3.5 and .Net 4 and 0 for .Net Core.

public ExcelWorksheets Worksheets { get; }

Property Value

ExcelWorksheets

Methods

CalculateAllPivotTables(bool)

Calculate all pivot tables in the workbook. Also see Calculate(bool) and Calculate(bool)

public void CalculateAllPivotTables(bool refresh = false)

Parameters

refresh bool

If the cache should be refreshed.

ClearFormulaValues()

Removes all values of cells with formulas in the entire workbook, but keeps the formulas.

public void ClearFormulaValues()

ClearFormulas()

Removes all formulas within the entire workbook, but keeps the calculated values.

public void ClearFormulas()

CreateHtmlExporter(params ExcelRangeBase[])

Create an html exporter for the supplied ranges.

public IExcelHtmlRangeExporter CreateHtmlExporter(params ExcelRangeBase[] ranges)

Parameters

ranges ExcelRangeBase[]

The ranges to create the report from. All ranges must originate from the current workbook.

Returns

IExcelHtmlRangeExporter

The HTML exporter.

Exceptions

InvalidOperationException

CreateVBAProject()

Create an empty VBA project.

public void CreateVBAProject()

Dispose()

Disposes the workbooks

public void Dispose()

RemoveVBAProject()

Remove the from the file VBA project.

public void RemoveVBAProject()