Commit Graph

234 Commits

Author SHA1 Message Date
xuri 3371933494
ref #65: new formula functions: AVERAGEIF and COUNTIF 2021-12-13 00:02:25 +08:00
xuri 76aacfda0b
ref #65: new formula function: SHEETS, and fix SHEET function count issue 2021-12-12 00:07:01 +08:00
jaby b33e39369a
This closes #1090 (#1092)
Keep track of operators per function
2021-12-10 16:48:02 +08:00
xuri 1b3040659d
ref #65: new formula functions: ISFORMULA, ISLOGICAL and ISREF 2021-12-09 20:16:12 +08:00
jaby 5bf35f8c1c
This closes #1088 (#1089)
Support check string equality with the string value of a defined name
2021-12-09 09:40:11 +08:00
xuri 7af55a5455
ref #65: new formula function ODDFPRICE 2021-12-06 08:16:32 +08:00
xuri e0c6fa1beb
Update docs for SetSheetStyle, and added 2 formula functions
ref #65: new formula functions DURATION and MDURATION
fix incorrect example in SetSheetStyle docs
2021-12-04 13:11:01 +08:00
xuri 49c9ea40d7
ref #65: new formula function YIELD 2021-11-29 01:21:03 +08:00
xuri f26df480e5
ref #65: new formula functions CONFIDENCE and CONFIDENCE.NORM 2021-11-25 00:38:49 +08:00
xuri 9561976074
ref #65: new formula function VDB 2021-11-22 00:39:39 +08:00
xuri a6c8803e91
ref #65: new formula function XIRR 2021-11-21 15:49:29 +08:00
xuri bc3c7d51a2
ref #65: new formula function PRICE
- fix COUPPCD result accuracy issue
- update close spreadsheet example in documentation and README
2021-11-17 00:25:36 +08:00
xuri bda8e7f812
This closes #1061, support multi-byte language on set header footer
typo fixed and simplify code for read the data values arguments of formula functions
2021-11-16 00:40:44 +08:00
xuri 72410361b0
ref #65, new formula functions: COUPDAYBS, COUPDAYS and COUPDAYSNC 2021-11-15 00:28:10 +08:00
xuri 5de671f8bb
ref #65: new formula function MINUTE 2021-11-12 01:01:50 +08:00
xuri 00eece4f53
ref #65: new formula function XNPV 2021-11-11 00:43:42 +08:00
xuri a68bc34b0c
ref #65: new formula functions PERCENTRANK.EXC, PERCENTRANK.INC and PERCENTRANK 2021-11-09 00:10:09 +08:00
xuri 8f82d8b029
ref #65: new formula functions COUPNCD and COUPNUM 2021-11-08 00:19:28 +08:00
xuri 1df76b583c
ref #65: new formula functions COUPPCD and PRICEMAT 2021-11-07 00:14:39 +08:00
xuri 02b0fdf2c9
ref #65: new formula functions PERCENTILE.EXC, QUARTILE.EXC and VAR.S 2021-11-06 00:11:16 +08:00
xuri 8d21959da3
ref #65: new formula functions VAR, VARA and VARPA 2021-11-05 00:03:46 +08:00
xuri e64775fdcc
ref #65: new formula functions STANDARDIZE, STDEV.P and STDEVP 2021-11-04 00:04:45 +08:00
xuri 08ad10f68e
ref #65: new formula functions ERF, ERF.PRECISE, ERFC and ERFC.PRECISE 2021-11-03 00:17:06 +08:00
xuri b0eb9ef807
ref #65: new formula functions DELTA and GESTEP 2021-11-02 00:02:35 +08:00
xuri 3447cfecf2
ref #65: new formula functions ACCRINT and ISOWEEKNUM 2021-11-01 00:13:38 +08:00
xuri 3bb2849e41
ref #65: new formula functions DEVSQ and GEOMEAN 2021-10-31 00:15:17 +08:00
Jerring 9cc6694830
ref #65: new formula functions RATE and RECEIVED (#1045) 2021-10-30 22:14:49 +08:00
xuri 8932a0a0c3
ref #65: new formula functions PV, RANK and RANK.EQ 2021-10-30 14:27:14 +08:00
xuri 5c4627a0c2
ref #65: new formula functions VALUE and WEEKDAY 2021-10-29 20:05:43 +08:00
xuri ffc998941c
ref #65: new formula functions SWITCH and TRIMMEAN 2021-10-28 22:17:33 +08:00
xuri 2e9635ece8
ref #65: new formula functions TBILLPRICE and TBILLYIELD 2021-10-27 08:07:21 +08:00
xuri 08087e1233
ref #65: new formula functions TBILLEQ and TEXTJOIN 2021-10-26 00:01:05 +08:00
xuri 154effdf82
ref #65: new formula functions YIELDDISC and YIELDMAT 2021-10-24 12:20:24 +08:00
xuri 71684d966a
ref #65: new formula functions AVEDEV and CHIDIST 2021-10-23 10:18:06 +08:00
xuri f126f63562
ref #65: new formula functions ADDRESS and PRICEDISC 2021-10-22 00:46:11 +08:00
xuri 49e80b9e47
ref #65: new formula functions DISC and INTRATE 2021-10-21 00:33:25 +08:00
xuri 1df7f32cc6
ref #65, new formula functions: RRI, SLN and SYD 2021-10-20 00:07:22 +08:00
xuri 5f907b7824
ref #65: new formula functions IFNA and IFS and fix string compare result issue in arithmetic operations 2021-10-19 00:06:19 +08:00
xuri 620f873186
ref #65: new formula function AMORLINC 2021-10-18 00:18:56 +08:00
xuri c89b64c53c
ref #65: new formula functions ACCRINTM and AMORDEGRC 2021-10-17 22:51:33 +08:00
xuri cf8766df83
ref #65, new formula function: TIME 2021-10-16 16:05:50 +08:00
xuri de38402f74
This closes #1031, fix small float parsed error in some case
- new formula function: YEARFRAC, ref #65
- update the codecov version
- remove unused variable
2021-10-15 21:45:46 +08:00
xuri 28841af980 initialize formula function TRANSPOSE, ref #65 and remove unused exported error variable ErrToExcelTime 2021-10-01 21:43:02 +08:00
xuri 490f3063c2
This closes #1026, time parse accuracy issue and typo fixed 2021-09-26 00:07:40 +08:00
xuri c05b9fe8a6
new formula function: DAYS, ref #65 2021-09-24 08:19:48 +08:00
xuri 2add938798
- new formula functions: DATEVALUE, ref #65
- fix ineffectual variable assignments
- timeout in go test
2021-09-17 00:15:51 +08:00
xuri 1ba3690764
new formula functions: WEIBULL and WEIBULL.DIST, ref #65 2021-09-14 22:23:12 +08:00
xuri 4ef68729f5
new formula functions: Z.TEST and ZTEST, ref #65 2021-09-13 22:40:38 +08:00
xuri dad8f490cc
This closes #417 and closes #520, new API `GetCellType` has been added 2021-09-09 23:43:16 +08:00
xuri 72d84c0cbd
This closes #262, support set line width of add the shape 2021-09-08 22:05:42 +08:00
xuri 684603befa
This closes #993, closes #1014
- Fix formula percentages calculated incorrectly
- Make UpdateLinkedValue skip macro sheet
- Fix conditional format bottom N not working
2021-09-06 00:01:42 +08:00
xuri 32b23ef42d
This closes #998
- Support text comparison in the formula, also ref #65
- `GetCellValue`, `GetRows`, `GetCols`, `Rows` and `Cols` support to specify read cell with raw value, ref #621
- Add missing properties for the cell formula
- Update the unit test for the `CalcCellValue`
2021-09-05 11:59:50 +08:00
xuri 5e1fbd6bf7
This closes #1008, added new formula functions MATCH and XOR, related issue #65 2021-08-29 00:03:44 +08:00
Stani 9b55f4f9f0
This closes #1006, new fn: MONTH ref #65
Co-authored-by: xuri <xuri.me@gmail.com>
2021-08-21 20:15:53 +08:00
Stani 4d716fa7ed
* This closes #1004, new fn: MONTH ref #65 2021-08-21 15:46:43 +08:00
Stani f280c03345
This closes #997, fix LOOKUP function to find nearest match (#1001) 2021-08-21 11:58:15 +08:00
Stani 935af2e356
This closes #1002, new fn: DAY ref #65
Co-authored-by: Stani Michiels <git@rchtct.com>
Co-authored-by: xuri <xuri.me@gmail.com>
2021-08-21 11:50:49 +08:00
Stani dca03c6230
This closes #994, fix LOOKUP function for Array form 2021-08-19 22:12:37 +08:00
xuri 48c16de8bf
Improve security and simplify code
- Make variable name more semantic
- Reduce cyclomatic complexities for the formula calculate function
- Support specified unzip size limit on open file options, avoid zip bombs vulnerability attack
- Typo fix for documentation and error message
2021-08-15 00:06:40 +08:00
three f6f14f507e
Speed up merge cells 2021-08-13 01:32:44 +08:00
bailantaotao 61d0ed1ff2
This closes #987: support nested calc for if formula (#988) 2021-08-12 14:53:59 +08:00
xuri c49e7aab30
Reduce cyclomatic complexities for the formula calculate function and update documentation for the API: `MergeCell` and `GetCellValue` 2021-08-09 22:22:43 +08:00
xuri 1ec0207fb5
Fix code security issue 2021-07-20 23:04:50 +08:00
xuri 4f0d676eb7
Fix missing set each cell's styles when set columns style 2021-07-08 00:52:07 +08:00
xuri f27624acdd
This closes #866, support use the defined name to reference the data range in pivot table options
- Fix incorrect scope when getting defined name
- Update docs: use column number instead of index on get column width
2021-06-29 22:26:55 +08:00
jaby bafe087a61
This closes #858 (#859)
* fixes https://github.com/360EntSecGroup-Skylar/excelize/issues/858

* fixes https://github.com/360EntSecGroup-Skylar/excelize/issues/858

Co-authored-by: dvelderp <peter.de.velder@gmail.com>
2021-06-08 19:02:34 +08:00
jaby 2c90b3f535
fixes #856 (#857) 2021-06-07 18:49:20 +08:00
xuri be12cc27f1
This closes #652, new SetColWidth API, support set column width in stream writing mode, and export error message 2021-05-10 00:09:24 +08:00
xuri 423bc26d1f
#65 fn: BESSELK and BESSELY 2021-05-09 14:20:17 +08:00
xuri 80d832022f
#65 fn: IRR nad MIRR 2021-04-16 14:45:45 +00:00
xuri 471f4f8d2b
#65 fn: FV, FVSCHEDULE, NPER, NPV and PDURATION 2021-04-14 00:39:18 +08:00
xuri 68dd5b345c
#65 fn: DB, DDB, DOLLARDE, DOLLARFR, EFFECT, ISPMT and NOMINAL 2021-04-13 00:01:13 +08:00
xuri a13b21fe07
fixed the negative values series missing chart color, #65 fn: CUMIPMT and CUMPRINC 2021-04-11 00:03:25 +08:00
xuri a8197485b5
#65 fn: IPMT, PMT and PPMT 2021-04-09 00:29:47 +08:00
xuri 737b7839a2
Fixed #819, read empty after streaming data writing
#65 fn: IMAGINARY, IMARGUMENT, IMCONJUGATE and IMDIV
2021-04-08 00:50:59 +08:00
xuri 99963f89c7
#65 fn: IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSEC, and IMSECH 2021-04-07 00:01:03 +08:00
xuri 3345e89b96
#65 fn: IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN 2021-04-05 13:00:34 +08:00
xuri f8f699a172
Go 1.15 and later required, #65 fn: IMABS, IMCOS, IMCOSH, IMCOT, IMCSC, IMCSCH, IMEXP, IMLN and IMLOG10 2021-04-04 15:29:43 +08:00
xuri 89c262fc1d
Fixed #813, streaming data writer result missing after call normal API
#65 formula function: COMPLEX
2021-04-03 22:56:02 +08:00
xuri 6e812a27c6
#65 fn: BESSELI and BESSELJ 2021-04-02 22:41:33 +08:00
xuri a002a2417e
#65 fn: VAR.P and VARP and fix Yoda conditions issue 2021-04-01 21:52:43 +08:00
xuri 9d4bf88b47
#65 fn: QUARTILE and QUARTILE.INC 2021-03-31 22:01:02 +08:00
xuri 2af96c0714
#65 fn: N, PERCENTILE.INC and T
typo fixed
2021-03-30 23:02:22 +08:00
xuri 6d7bd7cd8a
#65 fn: PERCENTILE and PERMUTATIONA 2021-03-27 00:08:55 +08:00
xuri 3903c106a4
#65, new fn: POISSON.DIST, POISSON, SKEW, and STDEV.S 2021-03-26 00:17:29 +08:00
xuri e1abdb0e5a
This closes #809, and add new fn: HARMEAN 2021-03-25 00:05:02 +08:00
xuri ab2c1c8fe1
#64 fn: NORM.DIST, NORMDIST, NORM.INV, NORMINV, NORM.S.DIST, NORMSDIST, NORM.S.INV, and NORMSINV 2021-03-24 08:24:59 +08:00
xuri 874d59cee0 related issue #65 fn: FIXED 2021-03-21 23:59:58 +08:00
xuri d3227393ef
#65 fn: DATEDIF 2021-03-19 23:23:05 +08:00
xuri 2350866d46
#65 fn: NOW and TODAY, and update dependencies 2021-03-14 22:29:18 +08:00
xuri 7ef1892f32
#65 fn: LARGE, SMALL, SUBSTITUTE, refactor ARABIC 2021-03-02 22:34:09 +08:00
xuri afe2ebc261 This improves compatibility for absolute XML path, Windows-style directory separator and inline namespace; 2021-02-27 08:49:10 +08:00
xuri 5a0d885315
handle default underline type on get rich text; #65 fn: CODE, COLUMN, FIND, FINDB 2021-02-24 00:37:44 +08:00
xuri d84050921e
check empty rich text run properties; new formula fn: LEFT, LEFTB, RIGHT, RIGHTB 2021-02-23 00:05:19 +08:00
xuri 2833395347
This closes #787, avoid duplicate rich text string items, new formula fn: BIN2DEC, BIN2HEX, BIN2OCT, HEX2BIN, HEX2DEC, HEX2OCT, OCT2BIN, OCT2DEC, OCT2HEX 2021-02-21 00:21:45 +08:00
xuri 9154d500cf ref: #756, set cell as blank when SetCellValue with nil #756, new formula fn: BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR 2021-02-19 00:20:27 +08:00
xuri ae6f56b953
#65 fn: DEC2BIN, DEC2HEX, DEC2OCT 2021-02-18 08:13:22 +08:00
xuri b3493c5416
#65 fn: KURT, STDEV, STDEVA 2021-02-17 00:51:06 +08:00
xuri bddea1262b
This closes #785, support to change tab color; new formula function: FISHER, FISHERINV, GAMMA, GAMMALN, MIN, MINA, PERMUT 2021-02-16 00:02:14 +08:00
xuri 36b7990d6b
lint issue fixed and new formula function: ATAN, AVERAGE, AVERAGEA, CONCAT, CONCATENATE, COUNT, COUNTBLANK, MAX 2021-02-15 00:09:35 +08:00
xuri ca6b1577a7
add ten formula functions: ENCODEURL, EXACT, FALSE, IFERROR, ISTEXT, LENB, NOT, REPT, SHEET, TRUE 2021-02-14 00:02:29 +08:00
xuri ec45d67e59
binary search in range lookup and new formula function: LOOKUP 2021-02-13 00:07:52 +08:00
xuri 23c73ab527
init new formula function: HLOOKUP 2021-02-09 00:12:53 +08:00
xuri 66d85dae13
init new formula function: VLOOKUP 2021-02-04 23:57:07 +08:00
xuri 1f329e8f96
This closes #774, closes #775 and closes #776
- correct adjust calculation chain in duplicate rows
- correct adjust defined name in the workbook when delete worksheet
- use absolute reference in the auto filters defined name to make it compatible with OpenOffice
- API `CoordinatesToCellName` have a new optional param to specify if using an absolute reference format
- Fix cyclomatic complexity issue of internal function `newFills` and `parseToken`
2021-02-02 22:23:16 +08:00
xuri db7b4ee362
update formula functions test 2021-02-01 00:07:51 +08:00
xuri 4ac32278ff
Fix hyperbolic cotangent calculation incorrect and unit test 2021-01-31 13:15:10 +08:00
xuri 76c72e0a30
Nested formula function support cell references as arguments 2021-01-31 01:28:40 +08:00
xuri dd77cfe44c
refactor formula calculation framework, add new function CHOOSE, and update dependencies module 2021-01-30 00:11:01 +08:00
xuri b84bd1abc0
new formula fn: IF, LEN; not equal operator support and faster numeric precision process 2021-01-27 13:51:47 +08:00
xuri 576bfffbe6 This closes #752, fix incorrectly merged cells on duplicate row, and new formula function: LOWER, PROPER, UPPER 2020-12-22 01:48:52 +00:00
Zhang Zhipeng ad79505173
new formula func CLEAN and TRIM, change import path to v2 (#747) 2020-12-14 09:56:42 +08:00
xuri 599a8cb0bc
Fixed #727, rounding numeric with precision for formula calculation 2020-11-19 21:38:35 +08:00
xuri b812e9a1a8
New formula function AND (#701) and update doc for the NewSheet (#714) 2020-10-22 08:29:25 +08:00
xuri 02530e8c8a Fix #701, init new formula function AND and OR, prevent formula lexer panic on retrieving the top token type 2020-10-17 01:18:22 +08:00
xuri ac3dce0bea
- Resolve #711, update docs for the GetSheetIndex
- Update unit test
2020-10-12 00:05:27 +08:00
xuri 3cf3101fd9 test on Go 1.5 on Travis CI and update docs for the CalcCellValue 2020-08-14 10:19:27 +00:00
jaby 5993a07422
Fix issue 665 (#666) 2020-07-14 23:05:43 +08:00
xuri b6dd7648a1
fn: COUNTA 2020-06-04 00:35:54 +08:00
xuri b62950a39e
fn: MEDIAN, ISNUMBER 2020-06-02 23:39:41 +08:00
xuri 22df34c493
fn: ISBLANK, ISERR, ISERROR, ISEVEN, ISNA, ISNONTEXT, ISODD, NA 2020-05-31 15:13:52 +08:00
xuri fa2571a17e
fn: SUMIF 2020-05-30 23:21:02 +08:00
xuri 2efc7107ff
- transform the range to the matrix on the first arg of the formula
- typo fix
- reset cell with and height when insert picture into merged cell with autofit
2020-05-21 22:57:58 +08:00
xuri 0feb819d4c
updated test and go.mod 2020-05-11 00:01:22 +08:00
xuri 882abb8098
- formula engine: reduce cyclomatic complexity
- styles: allow empty and default cell formats, #628
2020-05-10 16:56:08 +08:00
xuri 4188dc7a4a
- fn: SUMSQ
- resolve ineffectual assignment
- handle exception with invalid formula
- update range resolver
2020-05-09 00:32:36 +08:00
xuri 08185c398a
#65, fn: ROUND, ROUNDDOWN, ROUNDUP, SEC, SECH, SIN, SINH, SQRTPI, TAN, TANH, TRUNC 2020-05-08 00:31:17 +08:00
xuri de34ecaace
#65 fn: MOD, MROUND, MULTINOMIAL, MUNIT, ODD, PI, RADIANS, RAND, RANDBETWEEN, ROMAN 2020-05-07 00:15:54 +08:00
xuri 97e3f4ce68
#65 fn: CSCH, DECIMAL, DEGREES, EVEN, EXP, FACT, FACTDOUBLE, FLOOR, FLOOR.MATH, FLOOR.PRECISE, INT, ISO.CEILING, LN, LOG, LOG10, MDETERM 2020-05-06 00:01:31 +08:00
xuri 5c82f2269d
#65 fn: CEILING.PRECISE, COMBIN, COMBINA, COS, COSH, COT, COTH, CSC 2020-05-05 17:27:19 +08:00
xuri 6f796b88e6
fn: CEILING, CEILING.MATH 2020-05-04 21:22:11 +08:00
xuri 789adf9202
fn: ACOS, ACOSH, ACOT, ACOTH, ARABIC, ASIN, ASINH, ATANH, ATAN2, BASE 2020-05-04 18:18:05 +08:00
xuri bdf0538640
fn: ABS, GCD, LCM, POWER, PRODUCT, SIGN, SQRT, SUM, QUOTIENT 2020-05-04 13:40:04 +08:00
xuri 48fc4c08a2
init formula calculation engine, ref #65 and #599 2020-05-03 18:44:43 +08:00