EPPlus 6.2.x

Released: Mar 24, 2023

Updates in 6.2.x

v6.2.11

Updated Oct 25, 2023

Fixes

  • ROUNDUP function sometimes rounded incorrectly.
  • Some internal MemoryStream's were not disposed correctly.
  • Setting the Pivot table SourceRange to the same range as an existing Pivot Cache sometimes caused the workbook to be corrupt.
  • LoadFromCollection MemberInfo[] now works correctly with attributes, but are ignored on nested classes.
  • The SUBSTITUTE function did incorrectly handled Excel errors as strings.
  • ExcelRangeBase.LoadFromDataTable method did now checks the data table name to be valid, or otherwise sets the table name to TableX.
  • ExcelAddressBase.IsValidAddress did not handle table addresses.
  • ExcelHyperlink did not handle sub addresses, i.e., http://xxx.yy/zzz/#aa,bb. The ExcelHyperLink.ReferenceAddress will now contain the sub address path.
  • Setting the source range of a pivot table that shared the pivot cache with another pivot table caused a corrupt workbook.

v6.2.10

Updated Oct 2, 2023

Features

  • Hyperlinks loaded via the LoadFromCollection method will now be styled with the built-in Hyperlink Style. This style will also be added to the NamedStyles collection of the workbook if it does not exist.

Fixes

  • LoadFromCollection filter nested class properties-based on the supplied list of MemberInfo.
  • Fixed behavior for SUBTOTAL with filters in calculations.
  • Performance improvement and handling of DateTime null values in ToDataTable().
  • Auto filter was not always removed when when ExcelWorksheet.AutoFilterAddress was set to null.
  • Some workbooks could not be loaded due to the worksheet's rolling buffer being too small in some scenarios.
  • Fixed a performance issue when adding comments and controls.

v6.2.9

Updated Sep 8, 2023

Fixes

  • Fixed an issue where empty DataValidationnodes caused a corrupt workbook.
  • Ungrouping drawings put the drawings in the wrong position and sometimes caused the workbook to become corrupt.
  • VLOOKUP / HLOOKUP and MATCH did not work with external ranges.
  • The INDEX function handled rowno as colno when the argument was only one row.
  • Deleting a worksheet that was selected sometimes caused a hidden worksheet to become visible.
  • The CEILING and FLOOR functions did not handle null values correctly in the second parameter.
  • Fix for loading classes with only EPPlusNestedTableColumn attributes in ExcelRangeBase.LoadFromCollection.
  • Fixed an issue when using concatenation operator with Excel errors.

v6.2.8

Updated Aug 15, 2023

Fixes

  • Boolean style XML elements (like b, i or strike), with attribute 'val' set to 'false' or 'true' did not work.
  • The ExcelRangeBase.Insert and ExcelRangeBase.Delete methods failed if a defined name referenced another defined name.
  • The AND and OR functions didn't handle multi-cell ranges as parameters.

v6.2.7

Updated Jul 19, 2023

Features

  • Added support for hidden columns in EPPlusTableColumn attribute.

Fixes

  • Copying a worksheet with more than two tables to a new workbook sometimes throws an exception due to different table ids.
  • Matching an existing pivot table cache against source data was case-sensitive.
  • The Calculate method threw an exception if a defined name contained an error value.
  • Fixed an issue when updating formulas in data validations and conditional formatting’s when inserting/delete rows or columns.
  • Conditional formatting text types would fail to function correctly after deleting a column.
  • Copying a worksheet with a defined name with a formula pointing to another worksheet caused a NullReferenceException.

v6.2.6

Updated Jun 15, 2023

Fixes

  • Updated System.Security.Cryptography.Pkcs for security vulnerability in .NET 6 and 7.
  • An ArgumentOutOfRangeException was sometimes thrown when loading a workbook.

v6.2.5

Updated Jun 14, 2023

Fixes

  • EPPlus now allows saving of drawing groups containing drawings with same name.
  • Copying a formula containing a table reference caused an invalid formula.
  • Deleting and inserting into worksheets with data validations sometimes blocked adding new data validations on valid ranges.
  • Data validations now allows empty formulas.
  • REPLACE function can now handle a num_char argument that exceeds the length of the text.
  • EPPlus threw an incorrect CircularReferenceException when referencing the same cell on a different worksheet in some cases.
  • When copying a worksheet, Excel displayed the save dialog on close, due to the worksheets having the same uid.

v6.2.4

Updated May 15, 2023

Features

  • Added IRangeDataValidation.ClearDataValidation which allows you to clear data validations from a range.

Fixes

  • Having a table data source set to a defined name, and then insert rows into the range, caused the table source to be inverted into a range without inserting the rows.
  • An error occurred when setting the Shape.Text in some cases."Name cannot begin with the ' ' character, hexadecimal value 0x20, due to invalid XML.
  • Scientific notation numbers were not being recognized in the calculation when there were leading or trailing whitespaces.
  • Formulas update for Data Validation and Conditional Formatting sometimes updated the addresses wrong when inserting and deleting.
  • The worksheet XML got corrupt in rare cases, when having extLst items.
  • A pivot table's SourceRange property was not read on load.

v6.2.3

Updated May 2, 2023

Fixes

  • Setting sparklineGroups.MaxAxisType to eSparklineAxisMinMax.Group did not work.
  • Extracting the worksheet xml sometimes fails when having an extLst element.
  • Having a DataTable formula sometimes caused an InvalidDataException due to missing shared formula ID.
  • Setting ExcelRange.IsRichText caused an exception in some cases.
  • Inserting columns in tables with calculated columns sometimes caused a corrupt workbook upon save.
  • Having a workbook with picture-drawings with duplicate names caused Drawing.Delete(string) to fail.
  • Fixed an encoding issue with data validation attributes having values containing double quotes (").
  • Data validation's sometimes corrupted the workbook on save when referencing another worksheet in the formulas.

v6.2.2

Updated Apr 17, 2023

Fixes

  • Insert row did not update formula cells correctly in some cases.
  • Copying a worksheet to another workbook sometimes doesn't copy the correct style.
  • Creating a sparkline group with an ExcelAddress caused a corrupt workbook.
  • DataValidation objects with a ImeMode property set, threw an exception on save.
  • DataValidation objects sometimes caused a corrupt workbook when used with slicers and sparklines (extLst).

v6.2.1

Updated Apr 6, 2023

Fixes

  • Having data validations referring to other worksheets could break the XML causing the workbook to become corrupt.
  • Deleting a worksheet and having the last worksheet selected caused the workbook to become corrupt.
  • Fixed a rounding bug in ExcelTime, affecting the Time formula and the data validation time rule.
  • List data validations could not have empty value as a list item.

v6.2.0

Updated Mar 24, 2023

Features

  • Improved performance and support for cross-worksheet references in data validations.

Fixes

  • ExcelRange.RichText.Clear method is cleared all cell style properties.
  • Match functions compares null values as exact match.
  • ExcelChartSerie.Border.Fill.Color throws an exception on set, if a chart style has applied a border style.
  • Cloning rows when copying a worksheet now clones the RowInternal class.
  • Switched to internal image handler instead of System.Drawing.Common for .NET framework.
  • Deleting rows deleted conditional formatting and data validations for full rows/columns.
  • The stream was closed but not disposed when calling ExcelPackage.GetAsByteArray().
  • The formula parser did not handle exponential numbers in calculation correctly.