Commit Graph

343 Commits

Author SHA1 Message Date
MarkBaker 43dcd84520 Update change log 2021-05-29 13:43:40 +02:00
Matjaž Drolc 0b0f02206f fix: Set font size to 10 when given 0
This change restored behavior from PHP7 in PHP8. In PHP7 calling
setSize(0) resulted in font size being set to 10. The fix addresses
change to equal comparisons in PHP8. Extra comparison is added to keep
result from PHP7 in PHP8 for the setSize(0) case.
2021-05-29 11:17:25 +02:00
MarkBaker 004eacc49b Update changelog, and phpstan appeasement 2021-05-27 12:02:38 +02:00
MarkBaker 4089aede0a Resolve default values when a null argument is passed for HLOOKUP(), VLOOKUP() and ADDRESS() functions 2021-05-27 12:02:38 +02:00
Nathan Dench 992108cea7 Update Changelog 2021-05-20 21:26:20 +02:00
MarkBaker e83f862d0b Initial work on auto-building locale files for Exce functions 2021-05-20 20:41:09 +02:00
MarkBaker 7903827475 Deprecation notice in ChangeLog for the old Excel funcion implementations 2021-05-12 09:55:01 +02:00
oleibman d5492ac8ed
Merge branch 'master' into #984 2021-05-11 14:44:33 -07:00
Nathan Dench a96109d89b Update CHANGELOG.md with R1C1 conversion change 2021-05-07 14:34:05 +02:00
Mark Baker 5ee4fbf090
Implement basic autofilter ranges with Gnumeric Reader (#2057)
* Load basic autofilter ranges with Gnumeric Reader
* Handle null values passed to row height/column with/merged cells/autofilters
2021-05-04 22:32:12 +02:00
Mark Baker 83e55cffcc
First steps in the implementation of AutoFilters for ODS Reader and Writer (#2053)
* First steps in the implementation of AutoFilters for ODS Reader and Writer, starting with reading a basic AutoFilter range (ignoring row visibility, filter types and active filters for the moment).

And also some additional refactoring to extract the DefinedNames Reader into its own dedicated class as a part of overall code improvement... on the principle of "when working on a class, always try to leave the library codebase in a better state than you found it"

* Provide a basic Ods Writer implementation for AutoFilters
* AutoFilter Reader Test
* AutoFilter Writer Test
* Update Change Log
2021-05-02 22:00:48 +02:00
Mark Baker d555b5d312
Pattern Fill style should default to 'solid' if there is a pattern fill with colour but no style (#2050)
* Pattern Fill style should default to 'solid' if there is a pattern fill style for a conditional; though may need to check if there are defined fg/bg colours as well; and only set a fill style if there are defined colurs
2021-04-30 20:05:45 +02:00
xandros15 0b0215514a #984 update changelog 2021-04-30 15:30:43 +02:00
Mark Baker 8d7be25823
Improve Range handling in the Calculation Engine for Row and Column ranges (#2028)
* Improve Range handling in the Calculation Engine for Row and Column ranges
2021-04-27 19:10:37 +02:00
Tiago Fernandes 11f8a02194
Merge branch 'master' into issue-907-absolute-path-in-Target 2021-04-19 14:32:20 +01:00
Tiago Fernandes ee4f10e85c Updated Changelog 2021-04-19 14:31:10 +01:00
jarrett jordaan 818b993f2e
Check array key exists before access in Xlsx.php (#1970)
When loading an xlsx file which has images that use a URL, there's a PHP Notice that is shown. 

Added a check for the existence of the array key for accessing.
2021-04-18 19:14:01 +09:00
Mark Baker 0c403efe60
Resolution for [#Issue 1972](https://github.com/PHPOffice/PhpSpreadsheet/issues/1972) (#1978)
* Resolution for [#Issue 1972](https://github.com/PHPOffice/PhpSpreadsheet/issues/1972) where format masks with a leading and trailing quote were always treated as literal strings, even when they masks containing quoted characters.

Also resolves issue with colour name case-sensitivity
2021-04-01 13:25:05 +02:00
Mark Baker e68978f1c7
Chi squared inverse left tailed (#1964)
* Implementation of the CHISQ.INV() method for ChiSquared distribution left-tail
2021-03-28 19:12:45 +02:00
Mark Baker e2ff14fe89
Implemented the CHISQ.DIST() Statistical function. (#1961)
* Implementation of the CHISQ.DIST() statistical function for left tail distribution
2021-03-28 16:13:00 +02:00
Mark Baker 67fec4e3fc
Implementation of the CHITEST() statistical function (#1960)
* Implementation of the CHITEST() statistical function

* A couple of additional edge case tests (rows = 1, columns = 1)
2021-03-27 22:04:05 +01:00
MarkBaker 3ab066b7d6 Update change log 2021-03-17 12:39:29 +01:00
Mark Baker 9b67e3f597
Fix error with a single byte being removed after the _ spacing character when rendering number formats (#1927)
* Fix error with a single byte being removed after the _ spacing character when rendering number formats
2021-03-15 23:02:41 +01:00
christof-b 0d1957ad2c
Fix SpreadsheetML (xml) detection (#1917)
* Fix SpreadsheetML (xml) detection (#1916)

Replace the unrequired product signature by the
required namespace definition for XML Spreadsheet.

* Add summary to changelog (#1916)

Co-authored-by: Christof Bachmann <c.bachmann@pro54.com>
2021-03-13 12:03:05 +01:00
MarkBaker 4717741dc2 Update ChangeLog 2021-03-10 21:30:39 +01:00
Mark Baker f81ffd9a4f
Additional argument validation for LEFT(), MID() and RIGHT() text functions (#1909)
* Additional argument validation for LEFT(), MID() and RIGHT() text functions
2021-03-08 12:54:06 +01:00
Patrick Brouwers 000e6088c9
Reverted Scrutinzer fix in Xslx Reader listWorksheetInfo (#1895) 2021-03-03 21:34:45 +01:00
MarkBaker c55269cb06 Changelog 2021-03-02 18:54:11 +01:00
MarkBaker f8c58fbb7e Changelog 2021-03-02 18:51:13 +01:00
Mark Baker 08673b5820
Initial experiments using the new Database query logic with Conditional Statistical Functions (#1880)
- Refactoring of the Statistical Conditional functions (`AVERAGEIF()`, `AVERAGEIFS()`, `COUNTIF()`, `COUNTIFS()`, `MAXIFS()` and `MINIFS()` to use the new Database functions codebase.
- Extended unit testing
- Fix handling for null values
- Fixes to wildcard text searches

There's still scope for further improvements to memory usage and performance; but for now the code is stable with all unit tests passing
2021-02-27 18:26:12 +01:00
MarkBaker 8dcdf58131 Update change log 2021-02-27 15:22:25 +01:00
Mark Baker 25f7dcb9fd
Enable support for wildcard text searches in Excel Database functions (#1876)
* Enable support for wildcard text searches in Excel Database functions
2021-02-23 19:26:29 +01:00
Mark Baker 40a6dee0a4
Enable support for dates and percentages in Excel Database functions (#1875)
* Enable support for dates and percentages in Excel Database functions, and CountIf/AverageIf/etc
* Enable support for booleans in Excel Database functions
2021-02-22 20:40:40 +01:00
Mark Baker b0eb272ce1
Bugfix #1858; `getCell()` method should support named cells correctly (#1865)
Resolution for Issue [#1858](https://github.com/PHPOffice/PhpSpreadsheet/issues/1858)
2021-02-19 12:28:07 +01:00
Mark Baker 42ecc270ec
Extract Permutation functions from the Statistical class into a dedicated Permutations class (#1851)
* Extract Permutation functions from the Statistical class into a dedicated Permutations class

Retain the original methods in the Statistical class as stubs for BC, but deprecate them. They will be removed for PHPSpreadsheet v2

Note that unit tests still point to the Statistical class stubs; these should be modified to use the Permutations class directly when the stubs are removed

Also provided a basic implementationof the PERMUTATIONA() Function
2021-02-13 15:35:07 +01:00
MarkBaker e824caf857 Update Changelog 2021-02-13 13:09:49 +01:00
ElPopcorn b975fb7ddd
Update PPMT & IPMT implementation to better reflect excel behaviour. Update CUMPRINC & CUMIPMT implementation to prevent a crash while trying to add a string to a number. Update AMORLINC & AMORDEGRC to prevent crash when trying to multiply a string by a number. Update related unit tests. Update changelog to describe what we fixed. (#1840)
Co-authored-by: Obmecha <victor.sonza@nexvia.lu>
2021-02-12 18:04:52 +01:00
MarkBaker 6f6a0586d2 Update change log 2021-02-08 19:39:39 +01:00
Mark Baker b068639513
Substitute a literal dot inside quotes within number format masks to prevent it being mistaken for a decimal separator (#1830)
* Substitute a literal dot inside quotes within number format masks to prevent it being mistaken for a decimal separator
2021-02-08 15:06:07 +01:00
MarkBaker ce79f17fa9 Update changelog 2021-02-01 14:27:00 +01:00
MarkBaker a184b0f37b Update changelog 2021-02-01 11:58:40 +01:00
Roland Eigelsreiter fa51a8590b
Fix XLSX reader when having a corrupt numeric cell data type (#1664)
* fix for read xlsx with somewhat corrupt cell data type
2021-02-01 11:56:27 +01:00
Mark Baker 5f761b6274
Cell alignment for ods Writer (#1819)
* Cell alignment for ods Writer
2021-01-31 23:39:37 +01:00
MarkBaker 8b94a37e23 Update change log 2021-01-31 19:16:42 +01:00
Darren Maczka c82ff2526c
Fix/chart axis titles (#1760)
* use axPos value to determine whether an axis title is mapped to the XaxisLabel or YaxisLabel

* update changelog

* Fix php-cs-fixer violations

Co-authored-by: Darren Maczka <dkm@utk.edu>
Co-authored-by: Mark Baker <mark@lange.demon.co.uk>
2021-01-31 19:13:50 +01:00
Darren Maczka 44248cd04e
Fix/sheets xlsx chart (#1761)
* Add support for Google Sheets Exported XLSX Charts

Google Sheets XLSX charts use oneCellAnchor positioning and the data series
do not have the *Cache elements with cached values.

* update CHANGELOG

* Add support for Google Sheets Exported XLSX Charts

Google Sheets XLSX charts use oneCellAnchor positioning and the data series
do not have the *Cache elements with cached values. Because the reader had been
assuming *Cache elements existed as children of strRef and numRef, errors about
the node being deleted were thrown when reading Xlsx exported from Google Sheets.

Co-authored-by: Darren Maczka <dkm@utk.edu>
2021-01-31 18:53:54 +01:00
MarkBaker 304904d829 Update change log 2021-01-31 18:39:02 +01:00
Alexander Gunkel fdc8e8d17a
Fix/1674 (#1688)
* Treat inline strings like strings in Open Document because it has no specific inline-string format

* implement data-type error

Co-authored-by: Mark Baker <mark@lange.demon.co.uk>
2021-01-31 18:26:50 +01:00
SheetJSDev 24fb8e61ae
formatAsDate strip language metadata (#1618)
* Revert "Fix cant get right format chinese date format error"

This reverts commit 8c58385d6c.

* formatAsDate strip language metadata (fixes #1616)

Co-authored-by: Mark Baker <mark@lange.demon.co.uk>
2021-01-29 17:14:38 +01:00
もりもと たかひろ 8d2d78334f
Support DataBar of conditional formatting rule (#1754)
Implemented the databar of Conditional Type for XLSX Files.
- DataBar can be read, written, and added for basic use.
- Supports reading, writing and adding using "extLst".

About "extLst"
- https://docs.microsoft.com/en-us/openspecs/office_standards/ms-xlsx/07d607af-5618-4ca2-b683-6a78dc0d9627

The following setting items on the Excel setting screen can be read, written, and added.
- (minimum, maximum)type: Automatic, LowestValue, Number, Percent, Formula, Percentile
- Direction: context, leftToRight, rightToLeft (show data bar only)
- Fills Solid, Gradient
- FillColor: PositiveValues, NegativeValues
- Borders: Solid, None
- BorderColor: PositiveValues, NegativeValues
- Axis position: Automatic, Midpoint, None
- Axis color
2021-01-29 16:57:40 +01:00