Commit Graph

75 Commits

Author SHA1 Message Date
MarkBaker 87be8d3d8e Bugfix to ensure that current cell is maintained when executing formula calculations 2014-07-15 23:33:06 +01:00
Mark Baker 0042e47c0b GH-347 Using $this in static context in Calculation engine 2014-03-28 23:59:38 +00:00
Mark Baker 220da7485e Bugfix: Work item CP20703 - Calculation engine incorrectly evaluates empty cells as #VALUE 2014-02-09 16:08:17 +00:00
Mark Baker 992aee683a Update to copyright year in file headers 2013-12-31 18:36:33 +00:00
Eliu Florez b9907446a3 Update Calculation.php
PHPExcel Fatal error: Call to a member function cellExists() line: 3327
2013-12-04 22:46:55 -04:30
Adrien Crivelli f2e24ecdd4 Comparison operators on strings are usually case insensitive
Excel, Gnumeric and Google Spreadsheet are case insensitive, so the
default behavior of PHPExcel is modified accordingly.

However OpenOffice is case sensitive and is also supported via the
compatibility mode of PHPExcel.

Fixes #31
2013-11-21 16:04:59 +09:00
Mark Baker 9c6287a323 Bugfix: (IndrekHaav) Work Item GH-212 - Fix for formulae that reference a sheet whose name begins with a digit:
these were erroneously identified as numeric values, causing the parser to throw an undefined variable error.
2013-11-18 14:20:37 +00:00
Mark Baker 333c811c5e Minor performance tweaks to calculation engine 2013-06-16 16:24:34 +01:00
Mark Baker dfc74f8b95 Feature: (amerov) - Implementation of the Excel HLOOKUP() function 2013-06-14 23:57:50 +01:00
Mark Baker 9f575aff68 Manual PR merge to remove redundant brackets after throw in 2 files, courtesy of kachkaev 2013-05-15 18:02:24 +01:00
Mark Baker 6a4be7da3c Update to copyright year in file headers, and minor documentation updates 2013-05-14 12:20:28 +01:00
Mark Baker 216ef82a14 Yet more docblock fixes 2013-04-30 12:45:13 +01:00
Mark Baker 9ecce7f009 Minor performance tweak 2013-04-29 00:06:06 +01:00
Mark Baker d4e7026c95 docblocks 2013-04-27 23:36:39 +01:00
Mark Baker 8debf76a8a Minor performance tweaks 2013-04-26 12:44:47 +01:00
Mark Baker be5551d29e Refactor the cyclic reference stack as an object so that we can inject it into the logger constructor rather than having to pass it at every call 2013-02-16 10:59:19 +00:00
Mark Baker 3886c47ebe Refactoring of calculation engine using the multiton pattern to eliminate caching issues when working with multiple workbooks
Refactoring of calculation engine for improved performance and memory usage
Refactoring of cell object to eliminate data duplication and reduce memory
2013-02-15 15:42:06 +00:00
Mark Baker b589fab56b Selective calculation cache clearance and adjustment for unsetting or renaming worksheets 2013-02-12 12:44:31 +00:00
Mark Baker f05f66fa82 Eliminate some code duplication 2013-02-11 14:11:36 +00:00
Mark Baker abb076a817 Use direct reference to workbook in Calc Engine rather than cell's parent's parent 2013-02-05 09:52:28 +00:00
Mark Baker 1e1a6ac361 Convert singleton calculation engine to multiton 2013-02-04 17:26:27 +00:00
Mark Baker 242f69bb29 Performance tweaks 2013-02-01 13:29:13 +00:00
Mark Baker 3c3e910d74 Performance tweaks and modification to style checking for hh:mm or mm:ss time formats to differentiate correctly from mm months 2013-02-01 12:45:21 +00:00
Mark Baker 9a085abd7d Minor memory and performance improvements 2013-01-31 12:13:31 +00:00
Mark Baker 092fc7b5f7 General: (dbonsch) Work item GH-78 - Restructuring of PHPExcel Exceptions 2013-01-15 21:42:28 +00:00
Mark Baker 979aa760c0 Only load list of locale files for calculation engine if setLocale() is explicitly called 2012-12-24 15:32:17 +00:00
Mark Baker 7b8533a504 Minor bugfix to calculation engine formula validation (unbalanced braces) 2012-10-13 22:07:36 +01:00
Mark Baker 3f981d84d4 Move calculator token stack class into its own file 2012-10-07 11:31:08 +01:00
Mark Baker fb6ad92fd4 Minor bugfixes 2012-09-16 23:28:03 +01:00
Mark Baker 6fcec48233 Enable DAVERAGE() Excel function
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@88401 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-03-25 22:23:30 +00:00
Mark Baker 891981928d Doc Block changes
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@87638 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-03-11 17:58:38 +00:00
Mark Baker 22404188a0 Work Item 17516 - Issue #1 fix bad cut-and-paste
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@87244 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-03-03 20:22:13 +00:00
Mark Baker b18939b29d Minor fixes for strict standards
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@86471 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-02-14 13:48:09 +00:00
Mark Baker b41407743e Whoopsee... managed to introduce a bug when changing is_null() to === NULL for performance reasons, and reversed the logic of the test..... this is the fix
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@86204 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-02-08 22:33:31 +00:00
Mark Baker 9c2ceed08d Minor performance tweaks
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@85743 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-01-25 23:07:22 +00:00
Mark Baker 2cce9b754d Minor performance tweaks and adjustments to Excel functions to handle a few envelope test cases
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@85742 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-01-25 22:07:35 +00:00
Mark Baker 21cce674c8 Fix to inappropriate replacement of count() with empty().... there may be others I've not spotted yet.
Improved debuglog in calculation engine.

git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@85403 2327b42d-5241-43d6-9e2a-de5ac946f064
2012-01-17 21:57:06 +00:00
Mark Baker 68a0930f67 Bugfix: Work item 16960 - Previous calculation engine error conditions trigger cyclic reference errors
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@83263 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-11-25 14:37:47 +00:00
Mark Baker f2076cde3f Bugfix: Work item 16956 - External links in Excel2010 files cause Fatal error
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@83261 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-11-25 13:34:08 +00:00
Mark Baker c7f99d0d98 Bugfix: Work item 15707 - ini_set() call in Calculation class destructor
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@72060 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-04-19 21:40:35 +00:00
Mark Baker 70f773f0ca Bugfix: Support for Excel functions whose return can be used as either a value or as a cell reference depending on its context within a formula
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@71420 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-04-05 21:57:59 +00:00
Mark Baker f08f16c8ca General: Work item 15461 - Locale file paths not fit for windows
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@69731 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-03-04 14:22:08 +00:00
Mark Baker cfaa5209f7 General: Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC)
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@69508 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-28 00:32:55 +00:00
Mark Baker aedff36d4e Bugfix: Work item 15409 - Full column/row references in named ranges not supported by updateCellReference()
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@69495 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-27 22:33:42 +00:00
Mark Baker a07dd58fc7 Added listAllFunctionNames() method to the Calculation Engine, and modified the listFunctionNames() method to return only implemented functions
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@69154 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-22 13:57:15 +00:00
Mark Baker a8517724dc Bugfix: Work item 15379 - Named ranges with dot don't get parsed properly
Bugfix:	Work item 15096 - insertNewRowBefore fails to consistently update references
Bugfix:	"i" is not a valid character for Excel date format masks (in isDateTimeFormatCode() method)


git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@69064 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-21 12:21:20 +00:00
Mark Baker 2dcead065d Fixed bug in translation functions of the calculation engine
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@68887 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-18 17:39:58 +00:00
Mark Baker 7425aa8460 Feature: Work Item 2346 - Implement more Excel calculation functions
Implemented the DGET() Database function

git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@68576 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-13 17:19:00 +00:00
Mark Baker c5c816a9c6 Feature: Work Item 2346 - Implement more Excel calculation functions
Implemented the DAVERAGE(), DCOUNT(), DCOUNTA(), DMAX(), DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR() and DVARP() Database functions

git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@68574 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-13 17:08:00 +00:00
Mark Baker 8a00ef61e8 Added debug log echo option to Calculation Engine (for PHPExcel development team debugging use only)
git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@68482 2327b42d-5241-43d6-9e2a-de5ac946f064
2011-02-11 22:45:17 +00:00