PageRenderTime 54ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 1ms

/common/libraries/plugin/phpexcel/PHPExcel/Calculation.php

https://bitbucket.org/renaatdemuynck/chamilo
PHP | 3642 lines | 2799 code | 228 blank | 615 comment | 386 complexity | 353215c375a5c106a756c96133432287 MD5 | raw file
Possible License(s): BSD-3-Clause, LGPL-2.1, LGPL-3.0, GPL-3.0, MIT, GPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. <?php
  2. /**
  3. * PHPExcel
  4. *
  5. * Copyright (c) 2006 - 2011 PHPExcel
  6. *
  7. * This library is free software; you can redistribute it and/or
  8. * modify it under the terms of the GNU Lesser General Public
  9. * License as published by the Free Software Foundation; either
  10. * version 2.1 of the License, or (at your option) any later version.
  11. *
  12. * This library is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. * Lesser General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU Lesser General Public
  18. * License along with this library; if not, write to the Free Software
  19. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  20. *
  21. * @category PHPExcel
  22. * @package PHPExcel_Calculation
  23. * @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
  24. * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
  25. * @version 1.7.6, 2011-02-27
  26. */
  27. /** PHPExcel root directory */
  28. if (! defined('PHPEXCEL_ROOT'))
  29. {
  30. /**
  31. * @ignore
  32. */
  33. define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../');
  34. require (PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php');
  35. }
  36. if (! defined('CALCULATION_REGEXP_CELLREF'))
  37. {
  38. // Test for support of \P (multibyte options) in PCRE
  39. if (defined('PREG_BAD_UTF8_ERROR'))
  40. {
  41. // Cell reference (cell or range of cells, with or without a sheet reference)
  42. define('CALCULATION_REGEXP_CELLREF', '((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d{1,7})');
  43. // Named Range of cells
  44. define('CALCULATION_REGEXP_NAMEDRANGE', '((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?([_A-Z][_A-Z0-9\.]*)');
  45. }
  46. else
  47. {
  48. // Cell reference (cell or range of cells, with or without a sheet reference)
  49. define('CALCULATION_REGEXP_CELLREF', '(((\w*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d+)');
  50. // Named Range of cells
  51. define('CALCULATION_REGEXP_NAMEDRANGE', '(((\w*)|(\'.*\')|(\".*\"))!)?([_A-Z][_A-Z0-9\.]*)');
  52. }
  53. }
  54. /**
  55. * PHPExcel_Calculation (Singleton)
  56. *
  57. * @category PHPExcel
  58. * @package PHPExcel_Calculation
  59. * @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
  60. */
  61. class PHPExcel_Calculation
  62. {
  63. /** Constants */
  64. /** Regular Expressions */
  65. // Numeric operand
  66. const CALCULATION_REGEXP_NUMBER = '[-+]?\d*\.?\d+(e[-+]?\d+)?';
  67. // String operand
  68. const CALCULATION_REGEXP_STRING = '"(?:[^"]|"")*"';
  69. // Opening bracket
  70. const CALCULATION_REGEXP_OPENBRACE = '\(';
  71. // Function (allow for the old @ symbol that could be used to prefix a function, but we'll ignore it)
  72. const CALCULATION_REGEXP_FUNCTION = '@?([A-Z][A-Z0-9\.]*)[\s]*\(';
  73. // Cell reference (cell or range of cells, with or without a sheet reference)
  74. const CALCULATION_REGEXP_CELLREF = CALCULATION_REGEXP_CELLREF;
  75. // Named Range of cells
  76. const CALCULATION_REGEXP_NAMEDRANGE = CALCULATION_REGEXP_NAMEDRANGE;
  77. // Error
  78. const CALCULATION_REGEXP_ERROR = '\#[A-Z][A-Z0_\/]*[!\?]?';
  79. /** constants */
  80. const RETURN_ARRAY_AS_ERROR = 'error';
  81. const RETURN_ARRAY_AS_VALUE = 'value';
  82. const RETURN_ARRAY_AS_ARRAY = 'array';
  83. private static $returnArrayAsType = self :: RETURN_ARRAY_AS_VALUE;
  84. /**
  85. * Instance of this class
  86. *
  87. * @access private
  88. * @var PHPExcel_Calculation
  89. */
  90. private static $_instance;
  91. /**
  92. * Calculation cache
  93. *
  94. * @access private
  95. * @var array
  96. */
  97. private static $_calculationCache = array();
  98. /**
  99. * Calculation cache enabled
  100. *
  101. * @access private
  102. * @var boolean
  103. */
  104. private static $_calculationCacheEnabled = true;
  105. /**
  106. * Calculation cache expiration time
  107. *
  108. * @access private
  109. * @var float
  110. */
  111. private static $_calculationCacheExpirationTime = 15;
  112. /**
  113. * List of operators that can be used within formulae
  114. * The true/false value indicates whether it is a binary operator or a unary operator
  115. *
  116. * @access private
  117. * @var array
  118. */
  119. private static $_operators = array('+' => true, '-' => true, '*' => true, '/' => true, '^' => true, '&' => true,
  120. '%' => false, '~' => false, '>' => true, '<' => true, '=' => true, '>=' => true, '<=' => true, '<>' => true,
  121. '|' => true, ':' => true);
  122. /**
  123. * List of binary operators (those that expect two operands)
  124. *
  125. * @access private
  126. * @var array
  127. */
  128. private static $_binaryOperators = array('+' => true, '-' => true, '*' => true, '/' => true, '^' => true,
  129. '&' => true, '>' => true, '<' => true, '=' => true, '>=' => true, '<=' => true, '<>' => true, '|' => true,
  130. ':' => true);
  131. /**
  132. * Flag to determine how formula errors should be handled
  133. * If true, then a user error will be triggered
  134. * If false, then an exception will be thrown
  135. *
  136. * @access public
  137. * @var boolean
  138. *
  139. */
  140. public $suppressFormulaErrors = false;
  141. /**
  142. * Error message for any error that was raised/thrown by the calculation engine
  143. *
  144. * @access public
  145. * @var string
  146. *
  147. */
  148. public $formulaError = null;
  149. /**
  150. * Flag to determine whether a debug log should be generated by the calculation engine
  151. * If true, then a debug log will be generated
  152. * If false, then a debug log will not be generated
  153. *
  154. * @access public
  155. * @var boolean
  156. *
  157. */
  158. public $writeDebugLog = false;
  159. /**
  160. * Flag to determine whether a debug log should be echoed by the calculation engine
  161. * If true, then a debug log will be echoed
  162. * If false, then a debug log will not be echoed
  163. * A debug log can only be echoed if it is generated
  164. *
  165. * @access public
  166. * @var boolean
  167. *
  168. */
  169. public $echoDebugLog = false;
  170. /**
  171. * An array of the nested cell references accessed by the calculation engine, used for the debug log
  172. *
  173. * @access private
  174. * @var array of string
  175. *
  176. */
  177. private $debugLogStack = array();
  178. /**
  179. * The debug log generated by the calculation engine
  180. *
  181. * @access public
  182. * @var array of string
  183. *
  184. */
  185. public $debugLog = array();
  186. private $_cyclicFormulaCount = 0;
  187. private $_cyclicFormulaCell = '';
  188. public $cyclicFormulaCount = 0;
  189. private $_savedPrecision = 12;
  190. private static $_localeLanguage = 'en_us'; // US English (default locale)
  191. private static $_validLocaleLanguages = array('en')// English (default language)
  192. ;
  193. private static $_localeArgumentSeparator = ',';
  194. private static $_localeFunctions = array();
  195. public static $_localeBoolean = array('TRUE' => 'TRUE', 'FALSE' => 'FALSE', 'NULL' => 'NULL');
  196. // Constant conversion from text name/value to actual (datatyped) value
  197. private static $_ExcelConstants = array('TRUE' => true, 'FALSE' => false, 'NULL' => null);
  198. // PHPExcel functions
  199. private static $_PHPExcelFunctions = array( // PHPExcel functions
  200. 'ABS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  201. 'functionCall' => 'abs', 'argumentCount' => '1'),
  202. 'ACCRINT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  203. 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINT', 'argumentCount' => '4-7'),
  204. 'ACCRINTM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  205. 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINTM', 'argumentCount' => '3-5'),
  206. 'ACOS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  207. 'functionCall' => 'acos', 'argumentCount' => '1'),
  208. 'ACOSH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  209. 'functionCall' => 'acosh', 'argumentCount' => '1'),
  210. 'ADDRESS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  211. 'functionCall' => 'PHPExcel_Calculation_LookupRef::CELL_ADDRESS', 'argumentCount' => '2-5'),
  212. 'AMORDEGRC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  213. 'functionCall' => 'PHPExcel_Calculation_Financial::AMORDEGRC', 'argumentCount' => '6,7'),
  214. 'AMORLINC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  215. 'functionCall' => 'PHPExcel_Calculation_Financial::AMORLINC', 'argumentCount' => '6,7'),
  216. 'AND' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOGICAL,
  217. 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_AND', 'argumentCount' => '1+'),
  218. 'AREAS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  219. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  220. 'ASC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  221. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  222. 'ASIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  223. 'functionCall' => 'asin', 'argumentCount' => '1'),
  224. 'ASINH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  225. 'functionCall' => 'asinh', 'argumentCount' => '1'),
  226. 'ATAN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  227. 'functionCall' => 'atan', 'argumentCount' => '1'),
  228. 'ATAN2' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  229. 'functionCall' => 'PHPExcel_Calculation_MathTrig::ATAN2', 'argumentCount' => '2'),
  230. 'ATANH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  231. 'functionCall' => 'atanh', 'argumentCount' => '1'),
  232. 'AVEDEV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  233. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVEDEV', 'argumentCount' => '1+'),
  234. 'AVERAGE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  235. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGE', 'argumentCount' => '1+'),
  236. 'AVERAGEA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  237. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEA', 'argumentCount' => '1+'),
  238. 'AVERAGEIF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  239. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEIF', 'argumentCount' => '2,3'),
  240. 'AVERAGEIFS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  241. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '3+'),
  242. 'BAHTTEXT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  243. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  244. 'BESSELI' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  245. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELI', 'argumentCount' => '2'),
  246. 'BESSELJ' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  247. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELJ', 'argumentCount' => '2'),
  248. 'BESSELK' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  249. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELK', 'argumentCount' => '2'),
  250. 'BESSELY' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  251. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELY', 'argumentCount' => '2'),
  252. 'BETADIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  253. 'functionCall' => 'PHPExcel_Calculation_Statistical::BETADIST', 'argumentCount' => '3-5'),
  254. 'BETAINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  255. 'functionCall' => 'PHPExcel_Calculation_Statistical::BETAINV', 'argumentCount' => '3-5'),
  256. 'BIN2DEC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  257. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTODEC', 'argumentCount' => '1'),
  258. 'BIN2HEX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  259. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOHEX', 'argumentCount' => '1,2'),
  260. 'BIN2OCT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  261. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOOCT', 'argumentCount' => '1,2'),
  262. 'BINOMDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  263. 'functionCall' => 'PHPExcel_Calculation_Statistical::BINOMDIST', 'argumentCount' => '4'),
  264. 'CEILING' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  265. 'functionCall' => 'PHPExcel_Calculation_MathTrig::CEILING', 'argumentCount' => '2'),
  266. 'CELL' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  267. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1,2'),
  268. 'CHAR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  269. 'functionCall' => 'PHPExcel_Calculation_TextData::CHARACTER', 'argumentCount' => '1'),
  270. 'CHIDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  271. 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIDIST', 'argumentCount' => '2'),
  272. 'CHIINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  273. 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIINV', 'argumentCount' => '2'),
  274. 'CHITEST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  275. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2'),
  276. 'CHOOSE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  277. 'functionCall' => 'PHPExcel_Calculation_LookupRef::CHOOSE', 'argumentCount' => '2+'),
  278. 'CLEAN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  279. 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMNONPRINTABLE', 'argumentCount' => '1'),
  280. 'CODE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  281. 'functionCall' => 'PHPExcel_Calculation_TextData::ASCIICODE', 'argumentCount' => '1'),
  282. 'COLUMN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  283. 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMN', 'argumentCount' => '-1',
  284. 'passByReference' => array(true)),
  285. 'COLUMNS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  286. 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMNS', 'argumentCount' => '1'),
  287. 'COMBIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  288. 'functionCall' => 'PHPExcel_Calculation_MathTrig::COMBIN', 'argumentCount' => '2'),
  289. 'COMPLEX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  290. 'functionCall' => 'PHPExcel_Calculation_Engineering::COMPLEX', 'argumentCount' => '2,3'),
  291. 'CONCATENATE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  292. 'functionCall' => 'PHPExcel_Calculation_TextData::CONCATENATE', 'argumentCount' => '1+'),
  293. 'CONFIDENCE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  294. 'functionCall' => 'PHPExcel_Calculation_Statistical::CONFIDENCE', 'argumentCount' => '3'),
  295. 'CONVERT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  296. 'functionCall' => 'PHPExcel_Calculation_Engineering::CONVERTUOM', 'argumentCount' => '3'),
  297. 'CORREL' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  298. 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL', 'argumentCount' => '2'),
  299. 'COS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  300. 'functionCall' => 'cos', 'argumentCount' => '1'),
  301. 'COSH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  302. 'functionCall' => 'cosh', 'argumentCount' => '1'),
  303. 'COUNT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  304. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNT', 'argumentCount' => '1+'),
  305. 'COUNTA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  306. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTA', 'argumentCount' => '1+'),
  307. 'COUNTBLANK' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  308. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTBLANK', 'argumentCount' => '1'),
  309. 'COUNTIF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  310. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTIF', 'argumentCount' => '2'),
  311. 'COUNTIFS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  312. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2'),
  313. 'COUPDAYBS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  314. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYBS', 'argumentCount' => '3,4'),
  315. 'COUPDAYS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  316. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYS', 'argumentCount' => '3,4'),
  317. 'COUPDAYSNC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  318. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYSNC', 'argumentCount' => '3,4'),
  319. 'COUPNCD' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  320. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNCD', 'argumentCount' => '3,4'),
  321. 'COUPNUM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  322. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNUM', 'argumentCount' => '3,4'),
  323. 'COUPPCD' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  324. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPPCD', 'argumentCount' => '3,4'),
  325. 'COVAR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  326. 'functionCall' => 'PHPExcel_Calculation_Statistical::COVAR', 'argumentCount' => '2'),
  327. 'CRITBINOM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  328. 'functionCall' => 'PHPExcel_Calculation_Statistical::CRITBINOM', 'argumentCount' => '3'),
  329. 'CUBEKPIMEMBER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  330. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  331. 'CUBEMEMBER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  332. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  333. 'CUBEMEMBERPROPERTY' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  334. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  335. 'CUBERANKEDMEMBER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  336. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  337. 'CUBESET' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  338. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  339. 'CUBESETCOUNT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  340. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  341. 'CUBEVALUE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_CUBE,
  342. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '?'),
  343. 'CUMIPMT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  344. 'functionCall' => 'PHPExcel_Calculation_Financial::CUMIPMT', 'argumentCount' => '6'),
  345. 'CUMPRINC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  346. 'functionCall' => 'PHPExcel_Calculation_Financial::CUMPRINC', 'argumentCount' => '6'),
  347. 'DATE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  348. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATE', 'argumentCount' => '3'),
  349. 'DATEDIF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  350. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEDIF', 'argumentCount' => '2,3'),
  351. 'DATEVALUE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  352. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEVALUE', 'argumentCount' => '1'),
  353. 'DAVERAGE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  354. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '3'),
  355. 'DAY' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  356. 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFMONTH', 'argumentCount' => '1'),
  357. 'DAYS360' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  358. 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYS360', 'argumentCount' => '2,3'),
  359. 'DB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  360. 'functionCall' => 'PHPExcel_Calculation_Financial::DB', 'argumentCount' => '4,5'),
  361. 'DCOUNT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  362. 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNT', 'argumentCount' => '3'),
  363. 'DCOUNTA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  364. 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNTA', 'argumentCount' => '3'),
  365. 'DDB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  366. 'functionCall' => 'PHPExcel_Calculation_Financial::DDB', 'argumentCount' => '4,5'),
  367. 'DEC2BIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  368. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOBIN', 'argumentCount' => '1,2'),
  369. 'DEC2HEX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  370. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOHEX', 'argumentCount' => '1,2'),
  371. 'DEC2OCT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  372. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOOCT', 'argumentCount' => '1,2'),
  373. 'DEGREES' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  374. 'functionCall' => 'rad2deg', 'argumentCount' => '1'),
  375. 'DELTA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  376. 'functionCall' => 'PHPExcel_Calculation_Engineering::DELTA', 'argumentCount' => '1,2'),
  377. 'DEVSQ' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  378. 'functionCall' => 'PHPExcel_Calculation_Statistical::DEVSQ', 'argumentCount' => '1+'),
  379. 'DGET' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  380. 'functionCall' => 'PHPExcel_Calculation_Database::DGET', 'argumentCount' => '3'),
  381. 'DISC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  382. 'functionCall' => 'PHPExcel_Calculation_Financial::DISC', 'argumentCount' => '4,5'),
  383. 'DMAX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  384. 'functionCall' => 'PHPExcel_Calculation_Database::DMAX', 'argumentCount' => '3'),
  385. 'DMIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  386. 'functionCall' => 'PHPExcel_Calculation_Database::DMIN', 'argumentCount' => '3'),
  387. 'DOLLAR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  388. 'functionCall' => 'PHPExcel_Calculation_TextData::DOLLAR', 'argumentCount' => '1,2'),
  389. 'DOLLARDE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  390. 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARDE', 'argumentCount' => '2'),
  391. 'DOLLARFR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  392. 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARFR', 'argumentCount' => '2'),
  393. 'DPRODUCT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  394. 'functionCall' => 'PHPExcel_Calculation_Database::DPRODUCT', 'argumentCount' => '3'),
  395. 'DSTDEV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  396. 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEV', 'argumentCount' => '3'),
  397. 'DSTDEVP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  398. 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEVP', 'argumentCount' => '3'),
  399. 'DSUM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  400. 'functionCall' => 'PHPExcel_Calculation_Database::DSUM', 'argumentCount' => '3'),
  401. 'DURATION' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  402. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '5,6'),
  403. 'DVAR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  404. 'functionCall' => 'PHPExcel_Calculation_Database::DVAR', 'argumentCount' => '3'),
  405. 'DVARP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATABASE,
  406. 'functionCall' => 'PHPExcel_Calculation_Database::DVARP', 'argumentCount' => '3'),
  407. 'EDATE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  408. 'functionCall' => 'PHPExcel_Calculation_DateTime::EDATE', 'argumentCount' => '2'),
  409. 'EFFECT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  410. 'functionCall' => 'PHPExcel_Calculation_Financial::EFFECT', 'argumentCount' => '2'),
  411. 'EOMONTH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  412. 'functionCall' => 'PHPExcel_Calculation_DateTime::EOMONTH', 'argumentCount' => '2'),
  413. 'ERF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  414. 'functionCall' => 'PHPExcel_Calculation_Engineering::ERF', 'argumentCount' => '1,2'),
  415. 'ERFC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  416. 'functionCall' => 'PHPExcel_Calculation_Engineering::ERFC', 'argumentCount' => '1'),
  417. 'ERROR.TYPE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  418. 'functionCall' => 'PHPExcel_Calculation_Functions::ERROR_TYPE', 'argumentCount' => '1'),
  419. 'EVEN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  420. 'functionCall' => 'PHPExcel_Calculation_MathTrig::EVEN', 'argumentCount' => '1'),
  421. 'EXACT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  422. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2'),
  423. 'EXP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  424. 'functionCall' => 'exp', 'argumentCount' => '1'),
  425. 'EXPONDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  426. 'functionCall' => 'PHPExcel_Calculation_Statistical::EXPONDIST', 'argumentCount' => '3'),
  427. 'FACT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  428. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACT', 'argumentCount' => '1'),
  429. 'FACTDOUBLE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  430. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACTDOUBLE', 'argumentCount' => '1'),
  431. 'FALSE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOGICAL,
  432. 'functionCall' => 'PHPExcel_Calculation_Logical::FALSE', 'argumentCount' => '0'),
  433. 'FDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  434. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '3'),
  435. 'FIND' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  436. 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', 'argumentCount' => '2,3'),
  437. 'FINDB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  438. 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', 'argumentCount' => '2,3'),
  439. 'FINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  440. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '3'),
  441. 'FISHER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  442. 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHER', 'argumentCount' => '1'),
  443. 'FISHERINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  444. 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHERINV', 'argumentCount' => '1'),
  445. 'FIXED' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  446. 'functionCall' => 'PHPExcel_Calculation_TextData::FIXEDFORMAT', 'argumentCount' => '1-3'),
  447. 'FLOOR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  448. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FLOOR', 'argumentCount' => '2'),
  449. 'FORECAST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  450. 'functionCall' => 'PHPExcel_Calculation_Statistical::FORECAST', 'argumentCount' => '3'),
  451. 'FREQUENCY' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  452. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2'),
  453. 'FTEST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  454. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2'),
  455. 'FV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  456. 'functionCall' => 'PHPExcel_Calculation_Financial::FV', 'argumentCount' => '3-5'),
  457. 'FVSCHEDULE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  458. 'functionCall' => 'PHPExcel_Calculation_Financial::FVSCHEDULE', 'argumentCount' => '2'),
  459. 'GAMMADIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  460. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMADIST', 'argumentCount' => '4'),
  461. 'GAMMAINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  462. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMAINV', 'argumentCount' => '3'),
  463. 'GAMMALN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  464. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMALN', 'argumentCount' => '1'),
  465. 'GCD' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  466. 'functionCall' => 'PHPExcel_Calculation_MathTrig::GCD', 'argumentCount' => '1+'),
  467. 'GEOMEAN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  468. 'functionCall' => 'PHPExcel_Calculation_Statistical::GEOMEAN', 'argumentCount' => '1+'),
  469. 'GESTEP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  470. 'functionCall' => 'PHPExcel_Calculation_Engineering::GESTEP', 'argumentCount' => '1,2'),
  471. 'GETPIVOTDATA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  472. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '2+'),
  473. 'GROWTH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  474. 'functionCall' => 'PHPExcel_Calculation_Statistical::GROWTH', 'argumentCount' => '1-4'),
  475. 'HARMEAN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  476. 'functionCall' => 'PHPExcel_Calculation_Statistical::HARMEAN', 'argumentCount' => '1+'),
  477. 'HEX2BIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  478. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOBIN', 'argumentCount' => '1,2'),
  479. 'HEX2DEC' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  480. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTODEC', 'argumentCount' => '1'),
  481. 'HEX2OCT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  482. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOOCT', 'argumentCount' => '1,2'),
  483. 'HLOOKUP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  484. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '3,4'),
  485. 'HOUR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_DATE_AND_TIME,
  486. 'functionCall' => 'PHPExcel_Calculation_DateTime::HOUROFDAY', 'argumentCount' => '1'),
  487. 'HYPERLINK' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  488. 'functionCall' => 'PHPExcel_Calculation_LookupRef::HYPERLINK', 'argumentCount' => '1,2',
  489. 'passCellReference' => true),
  490. 'HYPGEOMDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  491. 'functionCall' => 'PHPExcel_Calculation_Statistical::HYPGEOMDIST', 'argumentCount' => '4'),
  492. 'IF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOGICAL,
  493. 'functionCall' => 'PHPExcel_Calculation_Logical::STATEMENT_IF', 'argumentCount' => '1-3'),
  494. 'IFERROR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOGICAL,
  495. 'functionCall' => 'PHPExcel_Calculation_Logical::IFERROR', 'argumentCount' => '2'),
  496. 'IMABS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  497. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMABS', 'argumentCount' => '1'),
  498. 'IMAGINARY' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  499. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMAGINARY', 'argumentCount' => '1'),
  500. 'IMARGUMENT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  501. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMARGUMENT', 'argumentCount' => '1'),
  502. 'IMCONJUGATE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  503. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCONJUGATE', 'argumentCount' => '1'),
  504. 'IMCOS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  505. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCOS', 'argumentCount' => '1'),
  506. 'IMDIV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  507. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMDIV', 'argumentCount' => '2'),
  508. 'IMEXP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  509. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMEXP', 'argumentCount' => '1'),
  510. 'IMLN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  511. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLN', 'argumentCount' => '1'),
  512. 'IMLOG10' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  513. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG10', 'argumentCount' => '1'),
  514. 'IMLOG2' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  515. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG2', 'argumentCount' => '1'),
  516. 'IMPOWER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  517. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPOWER', 'argumentCount' => '2'),
  518. 'IMPRODUCT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  519. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPRODUCT', 'argumentCount' => '1+'),
  520. 'IMREAL' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  521. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMREAL', 'argumentCount' => '1'),
  522. 'IMSIN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  523. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSIN', 'argumentCount' => '1'),
  524. 'IMSQRT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  525. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSQRT', 'argumentCount' => '1'),
  526. 'IMSUB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  527. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUB', 'argumentCount' => '2'),
  528. 'IMSUM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_ENGINEERING,
  529. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUM', 'argumentCount' => '1+'),
  530. 'INDEX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  531. 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDEX', 'argumentCount' => '1-4'),
  532. 'INDIRECT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  533. 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDIRECT', 'argumentCount' => '1,2',
  534. 'passCellReference' => true),
  535. 'INFO' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  536. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  537. 'INT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  538. 'functionCall' => 'PHPExcel_Calculation_MathTrig::INT', 'argumentCount' => '1'),
  539. 'INTERCEPT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  540. 'functionCall' => 'PHPExcel_Calculation_Statistical::INTERCEPT', 'argumentCount' => '2'),
  541. 'INTRATE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  542. 'functionCall' => 'PHPExcel_Calculation_Financial::INTRATE', 'argumentCount' => '4,5'),
  543. 'IPMT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  544. 'functionCall' => 'PHPExcel_Calculation_Financial::IPMT', 'argumentCount' => '4-6'),
  545. 'IRR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  546. 'functionCall' => 'PHPExcel_Calculation_Financial::IRR', 'argumentCount' => '1,2'),
  547. 'ISBLANK' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  548. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_BLANK', 'argumentCount' => '1'),
  549. 'ISERR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  550. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERR', 'argumentCount' => '1'),
  551. 'ISERROR' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  552. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERROR', 'argumentCount' => '1'),
  553. 'ISEVEN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  554. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_EVEN', 'argumentCount' => '1'),
  555. 'ISLOGICAL' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  556. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_LOGICAL', 'argumentCount' => '1'),
  557. 'ISNA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  558. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NA', 'argumentCount' => '1'),
  559. 'ISNONTEXT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  560. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NONTEXT', 'argumentCount' => '1'),
  561. 'ISNUMBER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  562. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NUMBER', 'argumentCount' => '1'),
  563. 'ISODD' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  564. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ODD', 'argumentCount' => '1'),
  565. 'ISPMT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_FINANCIAL,
  566. 'functionCall' => 'PHPExcel_Calculation_Financial::ISPMT', 'argumentCount' => '4'),
  567. 'ISREF' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  568. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  569. 'ISTEXT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_INFORMATION,
  570. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_TEXT', 'argumentCount' => '1'),
  571. 'JIS' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  572. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', 'argumentCount' => '1'),
  573. 'KURT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  574. 'functionCall' => 'PHPExcel_Calculation_Statistical::KURT', 'argumentCount' => '1+'),
  575. 'LARGE' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  576. 'functionCall' => 'PHPExcel_Calculation_Statistical::LARGE', 'argumentCount' => '2'),
  577. 'LCM' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  578. 'functionCall' => 'PHPExcel_Calculation_MathTrig::LCM', 'argumentCount' => '1+'),
  579. 'LEFT' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  580. 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', 'argumentCount' => '1,2'),
  581. 'LEFTB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  582. 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', 'argumentCount' => '1,2'),
  583. 'LEN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  584. 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', 'argumentCount' => '1'),
  585. 'LENB' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  586. 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', 'argumentCount' => '1'),
  587. 'LINEST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  588. 'functionCall' => 'PHPExcel_Calculation_Statistical::LINEST', 'argumentCount' => '1-4'),
  589. 'LN' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  590. 'functionCall' => 'log', 'argumentCount' => '1'),
  591. 'LOG' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  592. 'functionCall' => 'PHPExcel_Calculation_MathTrig::LOG_BASE', 'argumentCount' => '1,2'),
  593. 'LOG10' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_MATH_AND_TRIG,
  594. 'functionCall' => 'log10', 'argumentCount' => '1'),
  595. 'LOGEST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  596. 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGEST', 'argumentCount' => '1-4'),
  597. 'LOGINV' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  598. 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGINV', 'argumentCount' => '3'),
  599. 'LOGNORMDIST' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  600. 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGNORMDIST', 'argumentCount' => '3'),
  601. 'LOOKUP' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  602. 'functionCall' => 'PHPExcel_Calculation_LookupRef::LOOKUP', 'argumentCount' => '2,3'),
  603. 'LOWER' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_TEXT_AND_DATA,
  604. 'functionCall' => 'PHPExcel_Calculation_TextData::LOWERCASE', 'argumentCount' => '1'),
  605. 'MATCH' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_LOOKUP_AND_REFERENCE,
  606. 'functionCall' => 'PHPExcel_Calculation_LookupRef::MATCH', 'argumentCount' => '2,3'),
  607. 'MAX' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  608. 'functionCall' => 'PHPExcel_Calculation_Statistical::MAX', 'argumentCount' => '1+'),
  609. 'MAXA' => array('category' => PHPExcel_Calculation_Function :: CATEGORY_STATISTICAL,
  610. 'functionCall' => 'PHPExcel_Calculation_Statistical::MAXA', 'argumentCount' =>

Large files files are truncated, but you can click here to view the full file