Skip to content

Tags: redtailmatt/PhpSpreadsheet

Tags

1.29.0

Toggle 1.29.0's commit message
1.29.0 - 2023-06-15

- Wizards for defining Number Format masks for Dates and Times, including Durations/Intervals. [PR PHPOffice#3458](PHPOffice#3458)
- Specify data type in html tags. [Issue PHPOffice#3444](PHPOffice#3444) [PR PHPOffice#3445](PHPOffice#3445)
- Provide option to ignore hidden rows/columns in `toArray()` methods. [PR PHPOffice#3494](PHPOffice#3494)
- Font/Effects/Theme support for Chart Data Labels and Axis. [PR PHPOffice#3476](PHPOffice#3476)
- Font Themes support. [PR PHPOffice#3486](PHPOffice#3486)
- Ability to Ignore Cell Errors in Excel. [Issue PHPOffice#1141](PHPOffice#1141) [PR PHPOffice#3508](PHPOffice#3508)
- Unzipped Gnumeric file [PR PHPOffice#3591](PHPOffice#3591)

- Xlsx Color schemes read in will be written out (previously Excel 2007-2010 Color scheme was always written); manipulation of those schemes before write, including restoring prior behavior, is provided [PR PHPOffice#3476](PHPOffice#3476)
- Memory and speed optimisations for Read Filters with Xlsx Files and Shared Formulae. [PR PHPOffice#3474](PHPOffice#3474)
- Allow `CellRange` and `CellAddress` objects for the `range` argument in the `rangeToArray()` method. [PR PHPOffice#3494](PHPOffice#3494)
- Stock charts will now read and reproduce `upDownBars` and subsidiary tags; these were previously ignored on read and hard-coded on write. [PR PHPOffice#3515](PHPOffice#3515)

- Nothing

- Nothing

- Updates Cell formula absolute ranges/references, and Defined Name absolute ranges/references when inserting/deleting rows/columns. [Issue PHPOffice#3368](PHPOffice#3368) [PR PHPOffice#3402](PHPOffice#3402)
- EOMONTH() and EDATE() Functions should round date value before evaluation. [Issue PHPOffice#3436](PHPOffice#3436) [PR PHPOffice#3437](PHPOffice#3437)
- NETWORKDAYS function erroneously being converted to NETWORK_xlfn.DAYS in Xlsx Writer. [Issue PHPOffice#3461](PHPOffice#3461) [PR PHPOffice#3463](PHPOffice#3463)
- Getting a style for a CellAddress instance fails if the worksheet is set in the CellAddress instance. [Issue PHPOffice#3439](PHPOffice#3439) [PR PHPOffice#3469](PHPOffice#3469)
- Shared Formulae outside the filter range when reading with a filter are not always being identified. [Issue PHPOffice#3473](PHPOffice#3473) [PR PHPOffice#3474](PHPOffice#3474)
- Xls Reader Conditional Styles. [PR PHPOffice#3400](PHPOffice#3400)
- Allow use of # and 0 digit placeholders in fraction masks. [PR PHPOffice#3401](PHPOffice#3401)
- Modify Date/Time check in the NumberFormatter for decimal/fractional times. [PR PHPOffice#3413](PHPOffice#3413)
- Misplaced Xml Writing Chart Label FillColor. [Issue PHPOffice#3397](PHPOffice#3397) [PR PHPOffice#3404](PHPOffice#3404)
- TEXT function ignores Time in DateTimeStamp. [Issue PHPOffice#3409](PHPOffice#3409) [PR PHPOffice#3411](PHPOffice#3411)
- Xlsx Column Autosize Approximate for CJK. [Issue PHPOffice#3405](PHPOffice#3405) [PR PHPOffice#3416](PHPOffice#3416)
- Correct Xlsx Parsing of quotePrefix="0". [Issue PHPOffice#3435](PHPOffice#3435) [PR PHPOffice#3438](PHPOffice#3438)
- More Display Options for Chart Axis and Legend. [Issue PHPOffice#3414](PHPOffice#3414) [PR PHPOffice#3434](PHPOffice#3434)
- Apply strict type checking to Complex suffix. [PR PHPOffice#3452](PHPOffice#3452)
- Incorrect Font Color Read Xlsx Rich Text Indexed Color Custom Palette. [Issue PHPOffice#3464](PHPOffice#3464) [PR PHPOffice#3465](PHPOffice#3465)
- Xlsx Writer Honor Alignment in Default Font. [Issue PHPOffice#3443](PHPOffice#3443) [PR PHPOffice#3459](PHPOffice#3459)
- Support Border for Charts. [PR PHPOffice#3462](PHPOffice#3462)
- Error in "this row" structured reference calculation (cached result from first row when using a range) [Issue PHPOffice#3504](PHPOffice#3504) [PR PHPOffice#3505](PHPOffice#3505)
- Allow colour palette index references in Number Format masks [Issue PHPOffice#3511](PHPOffice#3511) [PR PHPOffice#3512](PHPOffice#3512)
- Xlsx Reader formula with quotePrefix [Issue PHPOffice#3495](PHPOffice#3495) [PR PHPOffice#3497](PHPOffice#3497)
- Handle REF error as part of range [Issue PHPOffice#3453](PHPOffice#3453) [PR PHPOffice#3467](PHPOffice#3467)
- Handle Absolute Pathnames in Rels File [Issue PHPOffice#3553](PHPOffice#3553) [PR PHPOffice#3554](PHPOffice#3554)
- Return Page Breaks in Order [Issue PHPOffice#3552](PHPOffice#3552) [PR PHPOffice#3555](PHPOffice#3555)
- Add position attribute for MemoryDrawing in Html [Issue PHPOffice#3529](PHPOffice#3529 [PR PHPOffice#3535](PHPOffice#3535)
- Allow Index_number as Array for VLOOKUP/HLOOKUP [Issue PHPOffice#3561](PHPOffice#3561 [PR PHPOffice#3570](PHPOffice#3570)
- Add Unsupported Options in Xml Spreadsheet [Issue PHPOffice#3566](PHPOffice#3566 [Issue PHPOffice#3568](PHPOffice#3568 [Issue PHPOffice#3569](PHPOffice#3569 [PR PHPOffice#3567](PHPOffice#3567)
- Changes to NUMBERVALUE, VALUE, DATEVALUE, TIMEVALUE [Issue PHPOffice#3574](PHPOffice#3574 [PR PHPOffice#3575](PHPOffice#3575)
- Redo calculation of color tinting [Issue PHPOffice#3550](PHPOffice#3550) [PR PHPOffice#3580](PHPOffice#3580)
- Accommodate Slash with preg_quote [PR PHPOffice#3582](PHPOffice#3582) [PR PHPOffice#3583](PHPOffice#3583) [PR PHPOffice#3584](PHPOffice#3584)
- HyperlinkBase Property and Html Handling of Properties [Issue PHPOffice#3573](PHPOffice#3573) [PR PHPOffice#3589](PHPOffice#3589)
- Improvements for Data Validation [Issue PHPOffice#3592](PHPOffice#3592) [Issue PHPOffice#3594](PHPOffice#3594) [PR PHPOffice#3605](PHPOffice#3605)

1.28.0

Toggle 1.28.0's commit message
1.28.0 - 2023-02-25

- Support for configuring a Chart Title's overlay [PR PHPOffice#3325](PHPOffice#3325)
- Wizards for defining Number Format masks for Numbers, Percentages, Scientific, Currency and Accounting [PR PHPOffice#3334](PHPOffice#3334)
- Support for fixed value divisor in fractional Number Format Masks [PR PHPOffice#3339](PHPOffice#3339)
- Allow More Fonts/Fontnames for Exact Width Calculation [PR PHPOffice#3326](PHPOffice#3326) [Issue PHPOffice#3190](PHPOffice#3190)
- Allow override of the Value Binder when setting a Cell value [PR PHPOffice#3361](PHPOffice#3361)

- Improved handling for @ placeholder in Number Format Masks [PR PHPOffice#3344](PHPOffice#3344)
- Improved handling for ? placeholder in Number Format Masks [PR PHPOffice#3394](PHPOffice#3394)
- Improved support for locale settings and currency codes when matching formatted strings to numerics in the Calculation Engine [PR PHPOffice#3373](PHPOffice#3373) and [PR PHPOffice#3374](PHPOffice#3374)
- Improved support for locale settings and matching in the Advanced Value Binder [PR PHPOffice#3376](PHPOffice#3376)

- Rationalisation of Pre-defined Currency Format Masks

- Nothing

- Calculation Engine doesn't evaluate Defined Name when default cell A1 is quote-prefixed [Issue PHPOffice#3335](PHPOffice#3335) [PR PHPOffice#3336](PHPOffice#3336)
- XLSX Writer - Array Formulas do not include function prefix [Issue PHPOffice#3337](PHPOffice#3337) [PR PHPOffice#3338](PHPOffice#3338)
- Permit Max Column for Row Breaks [Issue PHPOffice#3143](PHPOffice#3143) [PR PHPOffice#3345](PHPOffice#3345)
- AutoSize Columns should allow for dropdown icon when AutoFilter is for a Table [Issue PHPOffice#3356](PHPOffice#3356) [PR PHPOffice#3358](PHPOffice#3358) and for Center Alignment of Headers [Issue PHPOffice#3395](PHPOffice#3395) [PR PHPOffice#3399](PHPOffice#3399)
- Decimal Precision for Scientific Number Format Mask [Issue PHPOffice#3381](PHPOffice#3381) [PR PHPOffice#3382](PHPOffice#3382)
- Xls Writer Parser Handle Boolean Literals as Function Arguments [Issue PHPOffice#3369](PHPOffice#3369) [PR PHPOffice#3391](PHPOffice#3391)
- Conditional Formatting Improvements for Xlsx [Issue PHPOffice#3370](PHPOffice#3370) [Issue PHPOffice#3202](PHPOffice#3302) [PR PHPOffice#3372](PHPOffice#3372)
- Coerce Bool to Int for Mathematical Operations on Arrays [Issue PHPOffice#3389](PHPOffice#3389) [Issue PHPOffice#3396](PHPOffice#3396) [PR PHPOffice#3392](PHPOffice#3392)

1.27.1

Toggle 1.27.1's commit message
1.27.1 - 2023-02-08

- Nothing

- Nothing

- Nothing

- Nothing

- Fix Composer --dev dependency issue with dealerdirect/phpcodesniffer-composer-installer renaming their `master` branch to `main`

1.27.0

Toggle 1.27.0's commit message
1.27.0 - 2023-01-24

- Option to specify a range of columns/rows for the Row/Column `isEmpty()` methods [PR PHPOffice#3315](PHPOffice#3315)
- Option for Cell Iterator to return a null value or create and return a new cell when accessing a cell that doesn't exist [PR PHPOffice#3314](PHPOffice#3314)
- Support for Structured References in the Calculation Engine [PR PHPOffice#3261](PHPOffice#3261)
- Limited Support for Form Controls [PR PHPOffice#3130](PHPOffice#3130) [Issue PHPOffice#2396](PHPOffice#2396) [Issue PHPOffice#1770](PHPOffice#1770) [Issue PHPOffice#2388](PHPOffice#2388) [Issue PHPOffice#2904](PHPOffice#2904) [Issue PHPOffice#2661](PHPOffice#2661)

- Nothing

- Nothing

- Shared/JAMA is removed. [PR PHPOffice#3260](PHPOffice#3260)

- Namespace-Aware Code for SheetViewOptions, SheetProtection [PR PHPOffice#3230](PHPOffice#3230)
- Additional Method for XIRR if Newton-Raphson Doesn't Converge [Issue PHPOffice#689](PHPOffice#689) [PR PHPOffice#3262](PHPOffice#3262)
- Better Handling of Composite Charts [Issue PHPOffice#2333](PHPOffice#2333) [PR PHPOffice#3265](PHPOffice#3265)
- Update Column Reference for Columns Beginning with Y and Z [Issue PHPOffice#3263](PHPOffice#3263) [PR PHPOffice#3264](PHPOffice#3264)
- Honor Fit to 1-Page Height Html/Pdf [Issue PHPOffice#3266](PHPOffice#3266) [PR PHPOffice#3279](PHPOffice#3279)
- AND/OR/XOR Handling of Literal Strings [PR PHPOffice#3287](PHPOffice#3287)
- Xls Reader Vertical Break and Writer Page Order [Issue PHPOffice#3305](PHPOffice#3305) [PR PHPOffice#3306](PHPOffice#3306)

1.26.0

Toggle 1.26.0's commit message
v1.26.0

1.25.2

Toggle 1.25.2's commit message
1.25.2 - 2022-09-25

- Nothing

- Nothing

- Nothing

- Nothing

- Composer dependency clash with ezyang/htmlpurifier

1.25.1

Toggle 1.25.1's commit message
Change Log

1.25.0

Toggle 1.25.0's commit message
1.25.0 - 2022-09-25

- Implementation of the new `TEXTBEFORE()`, `TEXTAFTER()` and `TEXTSPLIT()` Excel Functions
- Implementation of the `ARRAYTOTEXT()` and `VALUETOTEXT()` Excel Functions
- Support for [mitoteam/jpgraph](https://packagist.org/packages/mitoteam/jpgraph) implementation of
  JpGraph library to render charts added.
- Charts: Add Gradients, Transparency, Hidden Axes, Rounded Corners, Trendlines, Date Axes.

- Allow variant behaviour when merging cells [Issue PHPOffice#3065](PHPOffice#3065)
  - Merge methods now allow an additional `$behaviour` argument. Permitted values are:
    - Worksheet::MERGE_CELL_CONTENT_EMPTY - Empty the content of the hidden cells (the default behaviour)
    - Worksheet::MERGE_CELL_CONTENT_HIDE - Keep the content of the hidden cells
    - Worksheet::MERGE_CELL_CONTENT_MERGE - Move the content of the hidden cells into the first cell

- Axis getLineProperty deprecated in favor of getLineColorProperty.
- Moved majorGridlines and minorGridlines from Chart to Axis. Setting either in Chart constructor or through Chart methods, or getting either using Chart methods is deprecated.
- Chart::EXCEL_COLOR_TYPE_* copied from Properties to ChartColor; use in Properties is deprecated.
- ChartColor::EXCEL_COLOR_TYPE_ARGB deprecated in favor of EXCEL_COLOR_TYPE_RGB ("A" component was never allowed).
- Misspelled Properties::LINE_STYLE_DASH_SQUERE_DOT deprecated in favor of LINE_STYLE_DASH_SQUARE_DOT.
- Clone not permitted for Spreadsheet. Spreadsheet->copy() can be used instead.

- Nothing

- Fix update to defined names when inserting/deleting rows/columns [Issue PHPOffice#3076](PHPOffice#3076) [PR PHPOffice#3077](PHPOffice#3077)
- Fix DataValidation sqRef when inserting/deleting rows/columns [Issue PHPOffice#3056](PHPOffice#3056) [PR PHPOffice#3074](PHPOffice#3074)
- Named ranges not usable as anchors in OFFSET function [Issue PHPOffice#3013](PHPOffice#3013)
- Fully flatten an array [Issue PHPOffice#2955](PHPOffice#2955) [PR PHPOffice#2956](PHPOffice#2956)
- cellExists() and getCell() methods should support UTF-8 named cells [Issue PHPOffice#2987](PHPOffice#2987) [PR PHPOffice#2988](PHPOffice#2988)
- Spreadsheet copy fixed, clone disabled. [PR PHPOffice#2951](PHPOffice#2951)
- Fix PDF problems with text rotation and paper size. [Issue PHPOffice#1747](PHPOffice#1747) [Issue PHPOffice#1713](PHPOffice#1713) [PR PHPOffice#2960](PHPOffice#2960)
- Limited support for chart titles as formulas [Issue PHPOffice#2965](PHPOffice#2965) [Issue PHPOffice#749](PHPOffice#749) [PR PHPOffice#2971](PHPOffice#2971)
- Add Gradients, Transparency, and Hidden Axes to Chart [Issue PHPOffice#2257](PHPOffice#2257) [Issue PHPOffice#2229](PHPOffice#2929) [Issue PHPOffice#2935](PHPOffice#2935) [PR PHPOffice#2950](PHPOffice#2950)
- Chart Support for Rounded Corners and Trendlines [Issue PHPOffice#2968](PHPOffice#2968) [Issue PHPOffice#2815](PHPOffice#2815) [PR PHPOffice#2976](PHPOffice#2976)
- Add setName Method for Chart [Issue PHPOffice#2991](PHPOffice#2991) [PR PHPOffice#3001](PHPOffice#3001)
- Eliminate partial dependency on php-intl in StringHelper [Issue PHPOffice#2982](PHPOffice#2982) [PR PHPOffice#2994](PHPOffice#2994)
- Minor changes for Pdf [Issue PHPOffice#2999](PHPOffice#2999) [PR PHPOffice#3002](PHPOffice#3002) [PR PHPOffice#3006](PHPOffice#3006)
- Html/Pdf Do net set background color for cells using (default) nofill [PR PHPOffice#3016](PHPOffice#3016)
- Add support for Date Axis to Chart [Issue PHPOffice#2967](PHPOffice#2967) [PR PHPOffice#3018](PHPOffice#3018)
- Reconcile Differences Between Css and Excel for Cell Alignment [PR PHPOffice#3048](PHPOffice#3048)
- R1C1 Format Internationalization and Better Support for Relative Offsets [Issue PHPOffice#1704](PHPOffice#1704) [PR PHPOffice#3052](PHPOffice#3052)
- Minor Fix for Percentage Formatting [Issue PHPOffice#1929](PHPOffice#1929) [PR PHPOffice#3053](PHPOffice#3053)

1.24.1

Toggle 1.24.1's commit message
1.24.1 - 2022-07-18

### Added

- Add Chart Axis Option textRotation [Issue PHPOffice#2705](PHPOffice#2705) [PR PHPOffice#2940](PHPOffice#2940)

### Changed

- Nothing

### Deprecated

- Nothing

### Removed

- Nothing

### Fixed

- Fix Encoding issue with Html reader (PHP 8.2 deprecation for mb_convert_encoding) [Issue PHPOffice#2942](PHPOffice#2942) [PR PHPOffice#2943](PHPOffice#2943)
- Additional Chart fixes
  - Pie chart with part separated unwantedly [Issue PHPOffice#2506](PHPOffice#2506) [PR PHPOffice#2928](PHPOffice#2928)
  - Chart styling is lost on simple load / save process [Issue PHPOffice#1797](PHPOffice#1797) [Issue PHPOffice#2077](PHPOffice#2077) [PR PHPOffice#2930](PHPOffice#2930)
  - Can't create contour chart (surface 2d) [Issue PHPOffice#2931](PHPOffice#2931) [PR PHPOffice#2933](PHPOffice#2933)
- VLOOKUP Breaks When Array Contains Null Cells [Issue PHPOffice#2934](PHPOffice#2934) [PR PHPOffice#2939](PHPOffice#2939)

1.24.0

Toggle 1.24.0's commit message
1.24.0 - 2022-07-09

Note that this will be the last 1.x branch release before the 2.x release. We will maintain both branches in parallel for a time; but users are requested to update to version 2.0 once that is fully available.

- Added `removeComment()` method for Worksheet [PR PHPOffice#2875](https://github.com/PHPOffice/PhpSpreadsheet/pull/2875/files)
- Add point size option for scatter charts [Issue PHPOffice#2298](PHPOffice#2298) [PR PHPOffice#2801](PHPOffice#2801)
- Basic support for Xlsx reading/writing Chart Sheets [PR PHPOffice#2830](PHPOffice#2830)

  Note that a ChartSheet is still only written as a normal Worksheet containing a single chart, not as an actual ChartSheet.

- Added Worksheet visibility in Ods Reader [PR PHPOffice#2851](PHPOffice#2851) and Gnumeric Reader [PR PHPOffice#2853](PHPOffice#2853)
- Added Worksheet visibility in Ods Writer [PR PHPOffice#2850](PHPOffice#2850)
- Allow Csv Reader to treat string as contents of file [Issue PHPOffice#1285](PHPOffice#1285) [PR PHPOffice#2792](PHPOffice#2792)
- Allow Csv Reader to store null string rather than leave cell empty [Issue PHPOffice#2840](PHPOffice#2840) [PR PHPOffice#2842](PHPOffice#2842)
- Provide new Worksheet methods to identify if a row or column is "empty", making allowance for different definitions of "empty":
  - Treat rows/columns containing no cell records as empty (default)
  - Treat cells containing a null value as empty
  - Treat cells containing an empty string as empty

- Modify `rangeBoundaries()`, `rangeDimension()` and `getRangeBoundaries()` Coordinate methods to work with row/column ranges as well as with cell ranges and cells [PR PHPOffice#2926](PHPOffice#2926)
- Better enforcement of value modification to match specified datatype when using `setValueExplicit()`
- Relax validation of merge cells to allow merge for a single cell reference [Issue PHPOffice#2776](PHPOffice#2776)
- Memory and speed improvements, particularly for the Cell Collection, and the Writers.

  See [the Discussion section on github](PHPOffice#2821) for details of performance across versions
- Improved performance for removing rows/columns from a worksheet

- Nothing

- Nothing

- Xls Reader resolving absolute named ranges to relative ranges [Issue PHPOffice#2826](PHPOffice#2826) [PR PHPOffice#2827](PHPOffice#2827)
- Null value handling in the Excel Math/Trig PRODUCT() function [Issue PHPOffice#2833](PHPOffice#2833) [PR PHPOffice#2834](PHPOffice#2834)
- Invalid Print Area defined in Xlsx corrupts internal storage of print area [Issue PHPOffice#2848](PHPOffice#2848) [PR PHPOffice#2849](PHPOffice#2849)
- Time interval formatting [Issue PHPOffice#2768](PHPOffice#2768) [PR PHPOffice#2772](PHPOffice#2772)
- Copy from Xls(x) to Html/Pdf loses drawings [PR PHPOffice#2788](PHPOffice#2788)
- Html Reader converting cell containing 0 to null string [Issue PHPOffice#2810](PHPOffice#2810) [PR PHPOffice#2813](PHPOffice#2813)
- Many fixes for Charts, especially, but not limited to, Scatter, Bubble, and Surface charts. [Issue PHPOffice#2762](PHPOffice#2762) [Issue PHPOffice#2299](PHPOffice#2299) [Issue PHPOffice#2700](PHPOffice#2700) [Issue PHPOffice#2817](PHPOffice#2817) [Issue PHPOffice#2763](PHPOffice#2763) [Issue PHPOffice#2219](PHPOffice#2219) [Issue PHPOffice#2863](PHPOffice#2863) [PR PHPOffice#2828](PHPOffice#2828) [PR PHPOffice#2841](PHPOffice#2841) [PR PHPOffice#2846](PHPOffice#2846) [PR PHPOffice#2852](PHPOffice#2852) [PR PHPOffice#2856](PHPOffice#2856) [PR PHPOffice#2865](PHPOffice#2865) [PR PHPOffice#2872](PHPOffice#2872) [PR PHPOffice#2879](PHPOffice#2879) [PR PHPOffice#2898](PHPOffice#2898) [PR PHPOffice#2906](PHPOffice#2906) [PR PHPOffice#2922](PHPOffice#2922) [PR PHPOffice#2923](PHPOffice#2923)
- Adjust both coordinates for two-cell anchors when rows/columns are added/deleted. [Issue PHPOffice#2908](PHPOffice#2908) [PR PHPOffice#2909](PHPOffice#2909)
- Keep calculated string results below 32K. [PR PHPOffice#2921](PHPOffice#2921)
- Filter out illegal Unicode char values FFFE/FFFF. [Issue PHPOffice#2897](PHPOffice#2897) [PR PHPOffice#2910](PHPOffice#2910)
- Better handling of REF errors and propagation of all errors in Calculation engine. [PR PHPOffice#2902](PHPOffice#2902)
- Calculating Engine regexp for Column/Row references when there are multiple quoted worksheet references in the formula [Issue PHPOffice#2874](PHPOffice#2874) [PR PHPOffice#2899](PHPOffice#2899)