PageRenderTime 89ms CodeModel.GetById 60ms RepoModel.GetById 1ms app.codeStats 0ms

/application/third_party/PHPExcel/Calculation.php

https://bitbucket.org/matyhaty/senses-designertravelv3
PHP | 3871 lines | 3200 code | 186 blank | 485 comment | 344 complexity | ab4427fd4f8dfd719039f0f34ed37835 MD5 | raw file
Possible License(s): LGPL-2.1, 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 - 2012 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 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)
  24. * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
  25. * @version ##VERSION##, ##DATE##
  26. */
  27. /** PHPExcel root directory */
  28. if (!defined('PHPEXCEL_ROOT')) {
  29. /**
  30. * @ignore
  31. */
  32. define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../');
  33. require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php');
  34. }
  35. if (!defined('CALCULATION_REGEXP_CELLREF')) {
  36. // Test for support of \P (multibyte options) in PCRE
  37. if(defined('PREG_BAD_UTF8_ERROR')) {
  38. // Cell reference (cell or range of cells, with or without a sheet reference)
  39. define('CALCULATION_REGEXP_CELLREF','((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d{1,7})');
  40. // Named Range of cells
  41. define('CALCULATION_REGEXP_NAMEDRANGE','((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?([_A-Z][_A-Z0-9\.]*)');
  42. } else {
  43. // Cell reference (cell or range of cells, with or without a sheet reference)
  44. define('CALCULATION_REGEXP_CELLREF','(((\w*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d+)');
  45. // Named Range of cells
  46. define('CALCULATION_REGEXP_NAMEDRANGE','(((\w*)|(\'.*\')|(\".*\"))!)?([_A-Z][_A-Z0-9\.]*)');
  47. }
  48. }
  49. /**
  50. * PHPExcel_Calculation (Singleton)
  51. *
  52. * @category PHPExcel
  53. * @package PHPExcel_Calculation
  54. * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)
  55. */
  56. class PHPExcel_Calculation {
  57. /** Constants */
  58. /** Regular Expressions */
  59. // Numeric operand
  60. const CALCULATION_REGEXP_NUMBER = '[-+]?\d*\.?\d+(e[-+]?\d+)?';
  61. // String operand
  62. const CALCULATION_REGEXP_STRING = '"(?:[^"]|"")*"';
  63. // Opening bracket
  64. const CALCULATION_REGEXP_OPENBRACE = '\(';
  65. // Function (allow for the old @ symbol that could be used to prefix a function, but we'll ignore it)
  66. const CALCULATION_REGEXP_FUNCTION = '@?([A-Z][A-Z0-9\.]*)[\s]*\(';
  67. // Cell reference (cell or range of cells, with or without a sheet reference)
  68. const CALCULATION_REGEXP_CELLREF = CALCULATION_REGEXP_CELLREF;
  69. // Named Range of cells
  70. const CALCULATION_REGEXP_NAMEDRANGE = CALCULATION_REGEXP_NAMEDRANGE;
  71. // Error
  72. const CALCULATION_REGEXP_ERROR = '\#[A-Z][A-Z0_\/]*[!\?]?';
  73. /** constants */
  74. const RETURN_ARRAY_AS_ERROR = 'error';
  75. const RETURN_ARRAY_AS_VALUE = 'value';
  76. const RETURN_ARRAY_AS_ARRAY = 'array';
  77. private static $returnArrayAsType = self::RETURN_ARRAY_AS_VALUE;
  78. /**
  79. * Instance of this class
  80. *
  81. * @access private
  82. * @var PHPExcel_Calculation
  83. */
  84. private static $_instance;
  85. /**
  86. * Calculation cache
  87. *
  88. * @access private
  89. * @var array
  90. */
  91. private static $_calculationCache = array ();
  92. /**
  93. * Calculation cache enabled
  94. *
  95. * @access private
  96. * @var boolean
  97. */
  98. private static $_calculationCacheEnabled = true;
  99. /**
  100. * Calculation cache expiration time
  101. *
  102. * @access private
  103. * @var float
  104. */
  105. private static $_calculationCacheExpirationTime = 15;
  106. /**
  107. * List of operators that can be used within formulae
  108. * The true/false value indicates whether it is a binary operator or a unary operator
  109. *
  110. * @access private
  111. * @var array
  112. */
  113. private static $_operators = array('+' => true, '-' => true, '*' => true, '/' => true,
  114. '^' => true, '&' => true, '%' => false, '~' => false,
  115. '>' => true, '<' => true, '=' => true, '>=' => true,
  116. '<=' => true, '<>' => true, '|' => true, ':' => true
  117. );
  118. /**
  119. * List of binary operators (those that expect two operands)
  120. *
  121. * @access private
  122. * @var array
  123. */
  124. private static $_binaryOperators = array('+' => true, '-' => true, '*' => true, '/' => true,
  125. '^' => true, '&' => true, '>' => true, '<' => true,
  126. '=' => true, '>=' => true, '<=' => true, '<>' => true,
  127. '|' => true, ':' => true
  128. );
  129. /**
  130. * Flag to determine how formula errors should be handled
  131. * If true, then a user error will be triggered
  132. * If false, then an exception will be thrown
  133. *
  134. * @access public
  135. * @var boolean
  136. *
  137. */
  138. public $suppressFormulaErrors = false;
  139. /**
  140. * Error message for any error that was raised/thrown by the calculation engine
  141. *
  142. * @access public
  143. * @var string
  144. *
  145. */
  146. public $formulaError = null;
  147. /**
  148. * Flag to determine whether a debug log should be generated by the calculation engine
  149. * If true, then a debug log will be generated
  150. * If false, then a debug log will not be generated
  151. *
  152. * @access public
  153. * @var boolean
  154. *
  155. */
  156. public $writeDebugLog = false;
  157. /**
  158. * Flag to determine whether a debug log should be echoed by the calculation engine
  159. * If true, then a debug log will be echoed
  160. * If false, then a debug log will not be echoed
  161. * A debug log can only be echoed if it is generated
  162. *
  163. * @access public
  164. * @var boolean
  165. *
  166. */
  167. public $echoDebugLog = false;
  168. /**
  169. * An array of the nested cell references accessed by the calculation engine, used for the debug log
  170. *
  171. * @access private
  172. * @var array of string
  173. *
  174. */
  175. private $debugLogStack = array();
  176. /**
  177. * The debug log generated by the calculation engine
  178. *
  179. * @access public
  180. * @var array of string
  181. *
  182. */
  183. public $debugLog = array();
  184. private $_cyclicFormulaCount = 0;
  185. private $_cyclicFormulaCell = '';
  186. public $cyclicFormulaCount = 0;
  187. private $_savedPrecision = 12;
  188. private static $_localeLanguage = 'en_us'; // US English (default locale)
  189. private static $_validLocaleLanguages = array( 'en' // English (default language)
  190. );
  191. private static $_localeArgumentSeparator = ',';
  192. private static $_localeFunctions = array();
  193. public static $_localeBoolean = array( 'TRUE' => 'TRUE',
  194. 'FALSE' => 'FALSE',
  195. 'NULL' => 'NULL'
  196. );
  197. // Constant conversion from text name/value to actual (datatyped) value
  198. private static $_ExcelConstants = array('TRUE' => true,
  199. 'FALSE' => false,
  200. 'NULL' => null
  201. );
  202. // PHPExcel functions
  203. private static $_PHPExcelFunctions = array( // PHPExcel functions
  204. 'ABS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  205. 'functionCall' => 'abs',
  206. 'argumentCount' => '1'
  207. ),
  208. 'ACCRINT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  209. 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINT',
  210. 'argumentCount' => '4-7'
  211. ),
  212. 'ACCRINTM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  213. 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINTM',
  214. 'argumentCount' => '3-5'
  215. ),
  216. 'ACOS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  217. 'functionCall' => 'acos',
  218. 'argumentCount' => '1'
  219. ),
  220. 'ACOSH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  221. 'functionCall' => 'acosh',
  222. 'argumentCount' => '1'
  223. ),
  224. 'ADDRESS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  225. 'functionCall' => 'PHPExcel_Calculation_LookupRef::CELL_ADDRESS',
  226. 'argumentCount' => '2-5'
  227. ),
  228. 'AMORDEGRC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  229. 'functionCall' => 'PHPExcel_Calculation_Financial::AMORDEGRC',
  230. 'argumentCount' => '6,7'
  231. ),
  232. 'AMORLINC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  233. 'functionCall' => 'PHPExcel_Calculation_Financial::AMORLINC',
  234. 'argumentCount' => '6,7'
  235. ),
  236. 'AND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL,
  237. 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_AND',
  238. 'argumentCount' => '1+'
  239. ),
  240. 'AREAS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  241. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  242. 'argumentCount' => '1'
  243. ),
  244. 'ASC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  245. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  246. 'argumentCount' => '1'
  247. ),
  248. 'ASIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  249. 'functionCall' => 'asin',
  250. 'argumentCount' => '1'
  251. ),
  252. 'ASINH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  253. 'functionCall' => 'asinh',
  254. 'argumentCount' => '1'
  255. ),
  256. 'ATAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  257. 'functionCall' => 'atan',
  258. 'argumentCount' => '1'
  259. ),
  260. 'ATAN2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  261. 'functionCall' => 'PHPExcel_Calculation_MathTrig::ATAN2',
  262. 'argumentCount' => '2'
  263. ),
  264. 'ATANH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  265. 'functionCall' => 'atanh',
  266. 'argumentCount' => '1'
  267. ),
  268. 'AVEDEV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  269. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVEDEV',
  270. 'argumentCount' => '1+'
  271. ),
  272. 'AVERAGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  273. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGE',
  274. 'argumentCount' => '1+'
  275. ),
  276. 'AVERAGEA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  277. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEA',
  278. 'argumentCount' => '1+'
  279. ),
  280. 'AVERAGEIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  281. 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEIF',
  282. 'argumentCount' => '2,3'
  283. ),
  284. 'AVERAGEIFS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  285. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  286. 'argumentCount' => '3+'
  287. ),
  288. 'BAHTTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  289. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  290. 'argumentCount' => '1'
  291. ),
  292. 'BESSELI' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  293. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELI',
  294. 'argumentCount' => '2'
  295. ),
  296. 'BESSELJ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  297. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELJ',
  298. 'argumentCount' => '2'
  299. ),
  300. 'BESSELK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  301. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELK',
  302. 'argumentCount' => '2'
  303. ),
  304. 'BESSELY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  305. 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELY',
  306. 'argumentCount' => '2'
  307. ),
  308. 'BETADIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  309. 'functionCall' => 'PHPExcel_Calculation_Statistical::BETADIST',
  310. 'argumentCount' => '3-5'
  311. ),
  312. 'BETAINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  313. 'functionCall' => 'PHPExcel_Calculation_Statistical::BETAINV',
  314. 'argumentCount' => '3-5'
  315. ),
  316. 'BIN2DEC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  317. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTODEC',
  318. 'argumentCount' => '1'
  319. ),
  320. 'BIN2HEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  321. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOHEX',
  322. 'argumentCount' => '1,2'
  323. ),
  324. 'BIN2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  325. 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOOCT',
  326. 'argumentCount' => '1,2'
  327. ),
  328. 'BINOMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  329. 'functionCall' => 'PHPExcel_Calculation_Statistical::BINOMDIST',
  330. 'argumentCount' => '4'
  331. ),
  332. 'CEILING' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  333. 'functionCall' => 'PHPExcel_Calculation_MathTrig::CEILING',
  334. 'argumentCount' => '2'
  335. ),
  336. 'CELL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  337. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  338. 'argumentCount' => '1,2'
  339. ),
  340. 'CHAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  341. 'functionCall' => 'PHPExcel_Calculation_TextData::CHARACTER',
  342. 'argumentCount' => '1'
  343. ),
  344. 'CHIDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  345. 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIDIST',
  346. 'argumentCount' => '2'
  347. ),
  348. 'CHIINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  349. 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIINV',
  350. 'argumentCount' => '2'
  351. ),
  352. 'CHITEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  353. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  354. 'argumentCount' => '2'
  355. ),
  356. 'CHOOSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  357. 'functionCall' => 'PHPExcel_Calculation_LookupRef::CHOOSE',
  358. 'argumentCount' => '2+'
  359. ),
  360. 'CLEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  361. 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMNONPRINTABLE',
  362. 'argumentCount' => '1'
  363. ),
  364. 'CODE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  365. 'functionCall' => 'PHPExcel_Calculation_TextData::ASCIICODE',
  366. 'argumentCount' => '1'
  367. ),
  368. 'COLUMN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  369. 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMN',
  370. 'argumentCount' => '-1',
  371. 'passByReference' => array(true)
  372. ),
  373. 'COLUMNS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  374. 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMNS',
  375. 'argumentCount' => '1'
  376. ),
  377. 'COMBIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  378. 'functionCall' => 'PHPExcel_Calculation_MathTrig::COMBIN',
  379. 'argumentCount' => '2'
  380. ),
  381. 'COMPLEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  382. 'functionCall' => 'PHPExcel_Calculation_Engineering::COMPLEX',
  383. 'argumentCount' => '2,3'
  384. ),
  385. 'CONCATENATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  386. 'functionCall' => 'PHPExcel_Calculation_TextData::CONCATENATE',
  387. 'argumentCount' => '1+'
  388. ),
  389. 'CONFIDENCE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  390. 'functionCall' => 'PHPExcel_Calculation_Statistical::CONFIDENCE',
  391. 'argumentCount' => '3'
  392. ),
  393. 'CONVERT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  394. 'functionCall' => 'PHPExcel_Calculation_Engineering::CONVERTUOM',
  395. 'argumentCount' => '3'
  396. ),
  397. 'CORREL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  398. 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL',
  399. 'argumentCount' => '2'
  400. ),
  401. 'COS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  402. 'functionCall' => 'cos',
  403. 'argumentCount' => '1'
  404. ),
  405. 'COSH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  406. 'functionCall' => 'cosh',
  407. 'argumentCount' => '1'
  408. ),
  409. 'COUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  410. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNT',
  411. 'argumentCount' => '1+'
  412. ),
  413. 'COUNTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  414. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTA',
  415. 'argumentCount' => '1+'
  416. ),
  417. 'COUNTBLANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  418. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTBLANK',
  419. 'argumentCount' => '1'
  420. ),
  421. 'COUNTIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  422. 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTIF',
  423. 'argumentCount' => '2'
  424. ),
  425. 'COUNTIFS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  426. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  427. 'argumentCount' => '2'
  428. ),
  429. 'COUPDAYBS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  430. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYBS',
  431. 'argumentCount' => '3,4'
  432. ),
  433. 'COUPDAYS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  434. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYS',
  435. 'argumentCount' => '3,4'
  436. ),
  437. 'COUPDAYSNC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  438. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYSNC',
  439. 'argumentCount' => '3,4'
  440. ),
  441. 'COUPNCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  442. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNCD',
  443. 'argumentCount' => '3,4'
  444. ),
  445. 'COUPNUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  446. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNUM',
  447. 'argumentCount' => '3,4'
  448. ),
  449. 'COUPPCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  450. 'functionCall' => 'PHPExcel_Calculation_Financial::COUPPCD',
  451. 'argumentCount' => '3,4'
  452. ),
  453. 'COVAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  454. 'functionCall' => 'PHPExcel_Calculation_Statistical::COVAR',
  455. 'argumentCount' => '2'
  456. ),
  457. 'CRITBINOM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  458. 'functionCall' => 'PHPExcel_Calculation_Statistical::CRITBINOM',
  459. 'argumentCount' => '3'
  460. ),
  461. 'CUBEKPIMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  462. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  463. 'argumentCount' => '?'
  464. ),
  465. 'CUBEMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  466. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  467. 'argumentCount' => '?'
  468. ),
  469. 'CUBEMEMBERPROPERTY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  470. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  471. 'argumentCount' => '?'
  472. ),
  473. 'CUBERANKEDMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  474. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  475. 'argumentCount' => '?'
  476. ),
  477. 'CUBESET' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  478. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  479. 'argumentCount' => '?'
  480. ),
  481. 'CUBESETCOUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  482. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  483. 'argumentCount' => '?'
  484. ),
  485. 'CUBEVALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE,
  486. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  487. 'argumentCount' => '?'
  488. ),
  489. 'CUMIPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  490. 'functionCall' => 'PHPExcel_Calculation_Financial::CUMIPMT',
  491. 'argumentCount' => '6'
  492. ),
  493. 'CUMPRINC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  494. 'functionCall' => 'PHPExcel_Calculation_Financial::CUMPRINC',
  495. 'argumentCount' => '6'
  496. ),
  497. 'DATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  498. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATE',
  499. 'argumentCount' => '3'
  500. ),
  501. 'DATEDIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  502. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEDIF',
  503. 'argumentCount' => '2,3'
  504. ),
  505. 'DATEVALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  506. 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEVALUE',
  507. 'argumentCount' => '1'
  508. ),
  509. 'DAVERAGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  510. 'functionCall' => 'PHPExcel_Calculation_Database::DAVERAGE',
  511. 'argumentCount' => '3'
  512. ),
  513. 'DAY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  514. 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFMONTH',
  515. 'argumentCount' => '1'
  516. ),
  517. 'DAYS360' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  518. 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYS360',
  519. 'argumentCount' => '2,3'
  520. ),
  521. 'DB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  522. 'functionCall' => 'PHPExcel_Calculation_Financial::DB',
  523. 'argumentCount' => '4,5'
  524. ),
  525. 'DCOUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  526. 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNT',
  527. 'argumentCount' => '3'
  528. ),
  529. 'DCOUNTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  530. 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNTA',
  531. 'argumentCount' => '3'
  532. ),
  533. 'DDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  534. 'functionCall' => 'PHPExcel_Calculation_Financial::DDB',
  535. 'argumentCount' => '4,5'
  536. ),
  537. 'DEC2BIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  538. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOBIN',
  539. 'argumentCount' => '1,2'
  540. ),
  541. 'DEC2HEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  542. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOHEX',
  543. 'argumentCount' => '1,2'
  544. ),
  545. 'DEC2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  546. 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOOCT',
  547. 'argumentCount' => '1,2'
  548. ),
  549. 'DEGREES' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  550. 'functionCall' => 'rad2deg',
  551. 'argumentCount' => '1'
  552. ),
  553. 'DELTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  554. 'functionCall' => 'PHPExcel_Calculation_Engineering::DELTA',
  555. 'argumentCount' => '1,2'
  556. ),
  557. 'DEVSQ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  558. 'functionCall' => 'PHPExcel_Calculation_Statistical::DEVSQ',
  559. 'argumentCount' => '1+'
  560. ),
  561. 'DGET' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  562. 'functionCall' => 'PHPExcel_Calculation_Database::DGET',
  563. 'argumentCount' => '3'
  564. ),
  565. 'DISC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  566. 'functionCall' => 'PHPExcel_Calculation_Financial::DISC',
  567. 'argumentCount' => '4,5'
  568. ),
  569. 'DMAX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  570. 'functionCall' => 'PHPExcel_Calculation_Database::DMAX',
  571. 'argumentCount' => '3'
  572. ),
  573. 'DMIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  574. 'functionCall' => 'PHPExcel_Calculation_Database::DMIN',
  575. 'argumentCount' => '3'
  576. ),
  577. 'DOLLAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  578. 'functionCall' => 'PHPExcel_Calculation_TextData::DOLLAR',
  579. 'argumentCount' => '1,2'
  580. ),
  581. 'DOLLARDE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  582. 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARDE',
  583. 'argumentCount' => '2'
  584. ),
  585. 'DOLLARFR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  586. 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARFR',
  587. 'argumentCount' => '2'
  588. ),
  589. 'DPRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  590. 'functionCall' => 'PHPExcel_Calculation_Database::DPRODUCT',
  591. 'argumentCount' => '3'
  592. ),
  593. 'DSTDEV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  594. 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEV',
  595. 'argumentCount' => '3'
  596. ),
  597. 'DSTDEVP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  598. 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEVP',
  599. 'argumentCount' => '3'
  600. ),
  601. 'DSUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  602. 'functionCall' => 'PHPExcel_Calculation_Database::DSUM',
  603. 'argumentCount' => '3'
  604. ),
  605. 'DURATION' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  606. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  607. 'argumentCount' => '5,6'
  608. ),
  609. 'DVAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  610. 'functionCall' => 'PHPExcel_Calculation_Database::DVAR',
  611. 'argumentCount' => '3'
  612. ),
  613. 'DVARP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE,
  614. 'functionCall' => 'PHPExcel_Calculation_Database::DVARP',
  615. 'argumentCount' => '3'
  616. ),
  617. 'EDATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  618. 'functionCall' => 'PHPExcel_Calculation_DateTime::EDATE',
  619. 'argumentCount' => '2'
  620. ),
  621. 'EFFECT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  622. 'functionCall' => 'PHPExcel_Calculation_Financial::EFFECT',
  623. 'argumentCount' => '2'
  624. ),
  625. 'EOMONTH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  626. 'functionCall' => 'PHPExcel_Calculation_DateTime::EOMONTH',
  627. 'argumentCount' => '2'
  628. ),
  629. 'ERF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  630. 'functionCall' => 'PHPExcel_Calculation_Engineering::ERF',
  631. 'argumentCount' => '1,2'
  632. ),
  633. 'ERFC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  634. 'functionCall' => 'PHPExcel_Calculation_Engineering::ERFC',
  635. 'argumentCount' => '1'
  636. ),
  637. 'ERROR.TYPE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  638. 'functionCall' => 'PHPExcel_Calculation_Functions::ERROR_TYPE',
  639. 'argumentCount' => '1'
  640. ),
  641. 'EVEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  642. 'functionCall' => 'PHPExcel_Calculation_MathTrig::EVEN',
  643. 'argumentCount' => '1'
  644. ),
  645. 'EXACT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  646. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  647. 'argumentCount' => '2'
  648. ),
  649. 'EXP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  650. 'functionCall' => 'exp',
  651. 'argumentCount' => '1'
  652. ),
  653. 'EXPONDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  654. 'functionCall' => 'PHPExcel_Calculation_Statistical::EXPONDIST',
  655. 'argumentCount' => '3'
  656. ),
  657. 'FACT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  658. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACT',
  659. 'argumentCount' => '1'
  660. ),
  661. 'FACTDOUBLE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  662. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACTDOUBLE',
  663. 'argumentCount' => '1'
  664. ),
  665. 'FALSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL,
  666. 'functionCall' => 'PHPExcel_Calculation_Logical::FALSE',
  667. 'argumentCount' => '0'
  668. ),
  669. 'FDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  670. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  671. 'argumentCount' => '3'
  672. ),
  673. 'FIND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  674. 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE',
  675. 'argumentCount' => '2,3'
  676. ),
  677. 'FINDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  678. 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE',
  679. 'argumentCount' => '2,3'
  680. ),
  681. 'FINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  682. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  683. 'argumentCount' => '3'
  684. ),
  685. 'FISHER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  686. 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHER',
  687. 'argumentCount' => '1'
  688. ),
  689. 'FISHERINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  690. 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHERINV',
  691. 'argumentCount' => '1'
  692. ),
  693. 'FIXED' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  694. 'functionCall' => 'PHPExcel_Calculation_TextData::FIXEDFORMAT',
  695. 'argumentCount' => '1-3'
  696. ),
  697. 'FLOOR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  698. 'functionCall' => 'PHPExcel_Calculation_MathTrig::FLOOR',
  699. 'argumentCount' => '2'
  700. ),
  701. 'FORECAST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  702. 'functionCall' => 'PHPExcel_Calculation_Statistical::FORECAST',
  703. 'argumentCount' => '3'
  704. ),
  705. 'FREQUENCY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  706. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  707. 'argumentCount' => '2'
  708. ),
  709. 'FTEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  710. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  711. 'argumentCount' => '2'
  712. ),
  713. 'FV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  714. 'functionCall' => 'PHPExcel_Calculation_Financial::FV',
  715. 'argumentCount' => '3-5'
  716. ),
  717. 'FVSCHEDULE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  718. 'functionCall' => 'PHPExcel_Calculation_Financial::FVSCHEDULE',
  719. 'argumentCount' => '2'
  720. ),
  721. 'GAMMADIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  722. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMADIST',
  723. 'argumentCount' => '4'
  724. ),
  725. 'GAMMAINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  726. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMAINV',
  727. 'argumentCount' => '3'
  728. ),
  729. 'GAMMALN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  730. 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMALN',
  731. 'argumentCount' => '1'
  732. ),
  733. 'GCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  734. 'functionCall' => 'PHPExcel_Calculation_MathTrig::GCD',
  735. 'argumentCount' => '1+'
  736. ),
  737. 'GEOMEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  738. 'functionCall' => 'PHPExcel_Calculation_Statistical::GEOMEAN',
  739. 'argumentCount' => '1+'
  740. ),
  741. 'GESTEP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  742. 'functionCall' => 'PHPExcel_Calculation_Engineering::GESTEP',
  743. 'argumentCount' => '1,2'
  744. ),
  745. 'GETPIVOTDATA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  746. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  747. 'argumentCount' => '2+'
  748. ),
  749. 'GROWTH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  750. 'functionCall' => 'PHPExcel_Calculation_Statistical::GROWTH',
  751. 'argumentCount' => '1-4'
  752. ),
  753. 'HARMEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  754. 'functionCall' => 'PHPExcel_Calculation_Statistical::HARMEAN',
  755. 'argumentCount' => '1+'
  756. ),
  757. 'HEX2BIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  758. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOBIN',
  759. 'argumentCount' => '1,2'
  760. ),
  761. 'HEX2DEC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  762. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTODEC',
  763. 'argumentCount' => '1'
  764. ),
  765. 'HEX2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  766. 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOOCT',
  767. 'argumentCount' => '1,2'
  768. ),
  769. 'HLOOKUP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  770. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  771. 'argumentCount' => '3,4'
  772. ),
  773. 'HOUR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME,
  774. 'functionCall' => 'PHPExcel_Calculation_DateTime::HOUROFDAY',
  775. 'argumentCount' => '1'
  776. ),
  777. 'HYPERLINK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  778. 'functionCall' => 'PHPExcel_Calculation_LookupRef::HYPERLINK',
  779. 'argumentCount' => '1,2',
  780. 'passCellReference'=> true
  781. ),
  782. 'HYPGEOMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  783. 'functionCall' => 'PHPExcel_Calculation_Statistical::HYPGEOMDIST',
  784. 'argumentCount' => '4'
  785. ),
  786. 'IF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL,
  787. 'functionCall' => 'PHPExcel_Calculation_Logical::STATEMENT_IF',
  788. 'argumentCount' => '1-3'
  789. ),
  790. 'IFERROR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL,
  791. 'functionCall' => 'PHPExcel_Calculation_Logical::IFERROR',
  792. 'argumentCount' => '2'
  793. ),
  794. 'IMABS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  795. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMABS',
  796. 'argumentCount' => '1'
  797. ),
  798. 'IMAGINARY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  799. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMAGINARY',
  800. 'argumentCount' => '1'
  801. ),
  802. 'IMARGUMENT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  803. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMARGUMENT',
  804. 'argumentCount' => '1'
  805. ),
  806. 'IMCONJUGATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  807. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCONJUGATE',
  808. 'argumentCount' => '1'
  809. ),
  810. 'IMCOS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  811. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCOS',
  812. 'argumentCount' => '1'
  813. ),
  814. 'IMDIV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  815. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMDIV',
  816. 'argumentCount' => '2'
  817. ),
  818. 'IMEXP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  819. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMEXP',
  820. 'argumentCount' => '1'
  821. ),
  822. 'IMLN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  823. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLN',
  824. 'argumentCount' => '1'
  825. ),
  826. 'IMLOG10' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  827. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG10',
  828. 'argumentCount' => '1'
  829. ),
  830. 'IMLOG2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  831. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG2',
  832. 'argumentCount' => '1'
  833. ),
  834. 'IMPOWER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  835. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPOWER',
  836. 'argumentCount' => '2'
  837. ),
  838. 'IMPRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  839. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPRODUCT',
  840. 'argumentCount' => '1+'
  841. ),
  842. 'IMREAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  843. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMREAL',
  844. 'argumentCount' => '1'
  845. ),
  846. 'IMSIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  847. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSIN',
  848. 'argumentCount' => '1'
  849. ),
  850. 'IMSQRT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  851. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSQRT',
  852. 'argumentCount' => '1'
  853. ),
  854. 'IMSUB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  855. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUB',
  856. 'argumentCount' => '2'
  857. ),
  858. 'IMSUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING,
  859. 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUM',
  860. 'argumentCount' => '1+'
  861. ),
  862. 'INDEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  863. 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDEX',
  864. 'argumentCount' => '1-4'
  865. ),
  866. 'INDIRECT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE,
  867. 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDIRECT',
  868. 'argumentCount' => '1,2',
  869. 'passCellReference'=> true
  870. ),
  871. 'INFO' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  872. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  873. 'argumentCount' => '1'
  874. ),
  875. 'INT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  876. 'functionCall' => 'PHPExcel_Calculation_MathTrig::INT',
  877. 'argumentCount' => '1'
  878. ),
  879. 'INTERCEPT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  880. 'functionCall' => 'PHPExcel_Calculation_Statistical::INTERCEPT',
  881. 'argumentCount' => '2'
  882. ),
  883. 'INTRATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  884. 'functionCall' => 'PHPExcel_Calculation_Financial::INTRATE',
  885. 'argumentCount' => '4,5'
  886. ),
  887. 'IPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  888. 'functionCall' => 'PHPExcel_Calculation_Financial::IPMT',
  889. 'argumentCount' => '4-6'
  890. ),
  891. 'IRR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  892. 'functionCall' => 'PHPExcel_Calculation_Financial::IRR',
  893. 'argumentCount' => '1,2'
  894. ),
  895. 'ISBLANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  896. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_BLANK',
  897. 'argumentCount' => '1'
  898. ),
  899. 'ISERR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  900. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERR',
  901. 'argumentCount' => '1'
  902. ),
  903. 'ISERROR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  904. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERROR',
  905. 'argumentCount' => '1'
  906. ),
  907. 'ISEVEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  908. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_EVEN',
  909. 'argumentCount' => '1'
  910. ),
  911. 'ISLOGICAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  912. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_LOGICAL',
  913. 'argumentCount' => '1'
  914. ),
  915. 'ISNA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  916. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NA',
  917. 'argumentCount' => '1'
  918. ),
  919. 'ISNONTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  920. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NONTEXT',
  921. 'argumentCount' => '1'
  922. ),
  923. 'ISNUMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  924. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NUMBER',
  925. 'argumentCount' => '1'
  926. ),
  927. 'ISODD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  928. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ODD',
  929. 'argumentCount' => '1'
  930. ),
  931. 'ISPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL,
  932. 'functionCall' => 'PHPExcel_Calculation_Financial::ISPMT',
  933. 'argumentCount' => '4'
  934. ),
  935. 'ISREF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  936. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  937. 'argumentCount' => '1'
  938. ),
  939. 'ISTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION,
  940. 'functionCall' => 'PHPExcel_Calculation_Functions::IS_TEXT',
  941. 'argumentCount' => '1'
  942. ),
  943. 'JIS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  944. 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY',
  945. 'argumentCount' => '1'
  946. ),
  947. 'KURT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  948. 'functionCall' => 'PHPExcel_Calculation_Statistical::KURT',
  949. 'argumentCount' => '1+'
  950. ),
  951. 'LARGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  952. 'functionCall' => 'PHPExcel_Calculation_Statistical::LARGE',
  953. 'argumentCount' => '2'
  954. ),
  955. 'LCM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  956. 'functionCall' => 'PHPExcel_Calculation_MathTrig::LCM',
  957. 'argumentCount' => '1+'
  958. ),
  959. 'LEFT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  960. 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT',
  961. 'argumentCount' => '1,2'
  962. ),
  963. 'LEFTB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  964. 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT',
  965. 'argumentCount' => '1,2'
  966. ),
  967. 'LEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  968. 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH',
  969. 'argumentCount' => '1'
  970. ),
  971. 'LENB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA,
  972. 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH',
  973. 'argumentCount' => '1'
  974. ),
  975. 'LINEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL,
  976. 'functionCall' => 'PHPExcel_Calculation_Statistical::LINEST',
  977. 'argumentCount' => '1-4'
  978. ),
  979. 'LN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  980. 'functionCall' => 'log',
  981. 'argumentCount' => '1'
  982. ),
  983. 'LOG' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  984. 'functionCall' => 'PHPExcel_Calculation_MathTrig::LOG_BASE',
  985. 'argumentCount' => '1,2'
  986. ),
  987. 'LOG10' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG,
  988. 'functionCall' => 'log10',
  989. 'argumentCount' => '1'
  990. )

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