Commit Graph

2416 Commits

Author SHA1 Message Date
Nathanael d. Noblet 22bf54ca11 Allow Html Reader to write into existing spreadsheet
Sometimes you may want to read html into multiple worksheets within one
spreadsheet. Allowing the passing of a spreadsheet in makes this possible.
2019-11-17 21:17:56 +01:00
Paul Blacknell 788f79c1bb
Validate XIRR inputs and return correct error values
Fix: Return #NUM! if values and dates contain a different number of values
Fix: Return #NUM! if there is not at least one positive cash flow and one negative cash flow
Fix: Return #NUM! if any number in dates precedes the starting date
Fix: Return #NUM! if a result that works cannot be found after max iteration tries
Fix: Correct DocBlocks for XIRR & XNPV
Add: Validate XIRR with unit tests

Closes #1177
2019-11-17 21:17:12 +01:00
Dennis Holst 3fc2fa47de Check for existing xf index in mapping array before accessing it 2019-11-17 21:09:28 +01:00
Adrien Crivelli b636c56d7f
Code style 2019-11-17 21:03:47 +01:00
Jorge Casas 156ab360fe
Fixed Functions->ifCondition for allowing <> and empty condition
In cells with formulas containing conditions like `=IFSUM(A1:A3;"";B1:B3)`
to sum cells from range A1:A3 with empty value in range B1:B3, the function
`Functions::ifCondition()` create in this case the code `=""""` instead of
`=""`, so it didn't work.

Closes #1206
2019-11-17 21:03:11 +01:00
Jerome3 b20f5c1d11
Fix ODS Reader when no DC namespace are defined
ODS files without spreadsheet properties were triggering a fatal error

Fixes #1047
Fixes #1176
Closes #1182
2019-11-17 20:57:53 +01:00
Rinat Gumirov 7e1bf823cc Add ReferenceHelper::cellSort and ReferenceHelper::cellReverseSort tests 2019-11-17 20:50:55 +01:00
Rinat Gumirov 82b3a36ab7 Style fix 2019-11-17 20:48:34 +01:00
Rinat Gumirov 73c79a90a8 Add PhpOffice\PhpSpreadsheet\Cell\DataType::checkString unit test 2019-11-17 20:48:34 +01:00
Rinat Gumirov f2bba73510 Add test for IOFactory::load 2019-11-17 18:39:38 +01:00
Fräntz Miccoli 445cc18e39
Fix IF implementation to comply with Excel behavior
Closes #1165
2019-11-17 18:26:33 +01:00
Adrien Crivelli 86bb4f9356
Change license from LGPL 2.1 to MIT
Fixes #140
2019-11-17 18:08:34 +01:00
Adrien Crivelli 5ec0e333dd
Fix code style 2019-11-17 17:44:02 +01:00
Diego Souza 157b6e75e4
useless parentheses 2019-11-17 17:40:20 +01:00
Diego Souza fac1d6de14
unnecessary string concatenation 2019-11-17 17:40:09 +01:00
Diego Souza ba735e21d6
combined assignment operator 2019-11-17 17:39:59 +01:00
Diego Souza d2cb2a0d1a
fixes UselessVariable and UnusedVariable from slevomat/coding-standard 2019-11-17 17:39:42 +01:00
Fräntz Miccoli 75dfcb5a36
Fix branch pruning resolution of non boolean conditions
Closes #1167
2019-11-10 22:59:09 +01:00
Adrien Crivelli 5441b2fa73
Keep big integer as integer instead of lossely casting to float
Closes #874
Fixes #1135
2019-11-10 22:51:53 +01:00
Adrien Crivelli d7d67ff39b
More explicit column index as string
Fixes #951
2019-11-10 20:58:20 +01:00
Adrien Crivelli 99d4f185fb
Avoid test without assertion 2019-11-10 17:05:18 +01:00
Adrien Crivelli a38de08344
Update deps to be installable with PHP 7.1-7.3 2019-11-10 17:04:56 +01:00
Suraxius 13eaeb39cf Fixes issue #948 (#1228)
* Fixes issue #948 by including a setUseEmbeddedCSS(false) method. Doesn't change current behaviour if not set

* Removes a empty line in src/PhpSpreadsheet/Writer/Html.php that fails a test
2019-11-01 00:52:20 +01:00
Mark Baker 617ea476c0
Complex number mask for integers containing a single dot (#1227) 2019-10-30 22:54:06 +01:00
Mark Baker 1b4098da8e
Minor scrutinizer fixes (#1226)
* Minor scrutinizer fixes

* Remove spurious debug output
2019-10-30 20:30:52 +01:00
Mark Baker 429a34cb14
Fix row/column range references against a different worksheet (#1224) 2019-10-29 23:35:23 +01:00
MarkBaker d088f47c7c Fix changelog, eliminate duplicate entries 2019-10-28 23:22:53 +01:00
MarkBaker 9adbbdb95a Update changelog 2019-10-28 21:54:30 +01:00
MarkBaker ab6e87fb1c Merge remote-tracking branch 'origin/master' 2019-10-28 21:53:40 +01:00
Jens Hassler 55209424b2 support "showZeros" setting in Excel advanced worksheet options (#1199)
* support "showZeros" setting in Excel advanced worksheet options

* add changelog entry

* change isShowZeros to getShowZeros
2019-10-28 21:52:30 +01:00
Mark Baker 43b760501a
Text data locale for fixedformat (#1220)
* Apply Locale settings to result of FIXEDFORMAT method call
2019-10-28 20:37:12 +01:00
MarkBaker bc8dd75030 Merge remote-tracking branch 'origin/master' 2019-10-28 18:52:26 +01:00
David Arenas 89066d2568 Bugfix/remove column out of range (#1197)
* Call garbage collector after removing a column

Otherwise callers of getHighestColumn get stale values

* Update changelog

* Fix remove a column out of range removes the last column

Given:
+---+---+
| A | B |
+---+---+
Attempting to remove 'D', should not alter the worksheet

* Avoid side effects when trying to remove more columns than exists
2019-10-28 18:52:06 +01:00
MarkBaker e469b00508 Merge remote-tracking branch 'origin/master' 2019-10-28 18:45:12 +01:00
David Arenas b82afe37dc Bugfix/invalid cached highest column after column removed (#1195)
* Call garbage collector after removing a column

Otherwise callers of getHighestColumn get stale values

* Update changelog
2019-10-28 18:42:56 +01:00
MarkBaker ddbd8ad0f5 Merge branch 'bugfix/invalid-cached-highest-column-after-column-removed' of https://github.com/darenas31415/PhpSpreadsheet 2019-10-28 18:38:26 +01:00
Marc Würth 311a34406e Do not export .github folder (#1211) 2019-10-19 13:18:28 +02:00
David Arenas edcdd8fead
Update changelog 2019-10-11 01:11:44 +01:00
David Arenas 703c670fbf
Call garbage collector after removing a column
Otherwise callers of getHighestColumn get stale values
2019-10-11 01:01:45 +01:00
Boris Momčilović 9d6736d303 Writer: Xlsx: Worksheet: handle PHP 7.4 deprecation notice 2019-09-20 16:22:08 -07:00
MarkBaker f7d2ebac40 Minor fix to operator check 2019-09-20 16:22:08 -07:00
MarkBaker a691516664 Improvements to default value binder 2019-09-20 16:22:08 -07:00
MarkBaker b894b98a2c Test fixes for PHP 7.4 stricter behaviour 2019-09-20 16:22:08 -07:00
Adrien Crivelli 8972d370a6
Merge pull request #1113 from PHPOffice/Further-Test-Refactoring
Further test refactoring
2019-09-20 16:15:29 -07:00
Adrien Crivelli ee5134a954
Merge branch 'master' into Further-Test-Refactoring 2019-09-20 16:04:36 -07:00
Adrien Crivelli a972943ac5
Mention PHP version change in changelog 2019-08-24 12:42:22 -07:00
Adrien Crivelli 48ccdc2716
Prepare for next version 2019-08-17 15:28:41 -07:00
Adrien Crivelli 09ab584a23
Merge tag '1.9.0'
1.9.0

### Added

- When &lt;br&gt; appears in a table cell, set the cell to wrap [#1071](https://github.com/PHPOffice/PhpSpreadsheet/issues/1071) and [#1070](https://github.com/PHPOffice/PhpSpreadsheet/pull/1070)
- Add MAXIFS, MINIFS, COUNTIFS and Remove MINIF, MAXIF [#1056](https://github.com/PHPOffice/PhpSpreadsheet/issues/1056)
- HLookup needs an ordered list even if range_lookup is set to false [#1055](https://github.com/PHPOffice/PhpSpreadsheet/issues/1055) and [#1076](https://github.com/PHPOffice/PhpSpreadsheet/pull/1076)
- Improve performance of IF function calls via ranch pruning to avoid resolution of every branches [#844](https://github.com/PHPOffice/PhpSpreadsheet/pull/844)
- MATCH function supports `*?~` Excel functionality, when match_type=0 [#1116](https://github.com/PHPOffice/PhpSpreadsheet/issues/1116)
- Allow HTML Reader to accept HTML as a string [#1136](https://github.com/PHPOffice/PhpSpreadsheet/pull/1136)

### Fixed

- Fix to AVERAGEIF() function when called with a third argument
- Eliminate duplicate fill none style entries [#1066](https://github.com/PHPOffice/PhpSpreadsheet/issues/1066)
- Fix number format masks containing literal (non-decimal point) dots [#1079](https://github.com/PHPOffice/PhpSpreadsheet/issues/1079)
- Fix number format masks containing named colours that were being misinterpreted as date formats; and add support for masks that fully replace the value with a full text string [#1009](https://github.com/PHPOffice/PhpSpreadsheet/issues/1009)
- Stricter-typed comparison testing in COUNTIF() and COUNTIFS() evaluation [#1046](https://github.com/PHPOffice/PhpSpreadsheet/issues/1046)
- COUPNUM should not return zero when settlement is in the last period [#1020](https://github.com/PHPOffice/PhpSpreadsheet/issues/1020) and [#1021](https://github.com/PHPOffice/PhpSpreadsheet/pull/1021)
- Fix handling of named ranges referencing sheets with spaces or "!" in their title
- Cover `getSheetByName()` with tests for name with quote and spaces [#739](https://github.com/PHPOffice/PhpSpreadsheet/issues/739)
- Best effort to support invalid colspan values in HTML reader - [#878](https://github.com/PHPOffice/PhpSpreadsheet/pull/878)
- Fixes incorrect rows deletion [#868](https://github.com/PHPOffice/PhpSpreadsheet/issues/868)
- MATCH function fix (value search by type, stop search when match_type=-1 and unordered element encountered) [#1116](https://github.com/PHPOffice/PhpSpreadsheet/issues/1116)
- Fix `getCalculatedValue()` error with more than two INDIRECT [#1115](https://github.com/PHPOffice/PhpSpreadsheet/pull/1115)
- Writer\Html did not hide columns [#985](https://github.com/PHPOffice/PhpSpreadsheet/pull/985)
2019-08-17 15:27:37 -07:00
Adrien Crivelli 8dea03eaf6
1.9.0 2019-08-17 15:24:35 -07:00
Claudio Galdiolo 74bc0b826d reword repeated text 2019-08-17 13:49:27 -07:00