Known Function Differences¶
Some Excel functions may produce slightly different results in Codcel. This page lists known differences beyond the general rounding and type conversion differences.
Functions with Known Precision Differences¶
FORECAST.ETS (Non-Seasonal)¶
Non-seasonal forecasting produces results that differ from Excel by approximately 0.1-0.2 for small datasets. See FORECAST.ETS Precision for details.
Functions with Limitations¶
TEXT¶
The TEXT function supports common format strings but may not handle every custom format pattern that Excel accepts. Standard number, date, and currency formats work correctly, including localized month and weekday names, locale number symbols, and [$SYMBOL-LCID] currency prefixes — see TEXT.
Two known gaps remain:
- Colour codes are parsed and discarded.
[Red]#,##0.00formats the number correctly but the colour has nowhere to go, sinceTEXTreturns a string rather than a styled cell. - Grouping is always by three digits. Locales that group by lakh — CLDR gives Hindi
#,##,##0.00— are rendered with uniform three-digit groups.
TOCOL / TOROW¶
The optional ignore argument filters blank values only. Codcel does not track error values as a filterable
category during reshaping, so:
ignore |
Excel | Codcel |
|---|---|---|
0 |
Keep all values | Keep all values |
1 |
Ignore blanks | Ignore blanks |
2 |
Ignore errors | Keeps all values — behaves as 0 |
3 |
Ignore blanks and errors | Ignores blanks only — behaves as 1 |
An out-of-range ignore value is also accepted silently and treated as 0, where Excel returns #VALUE!.
Workaround: wrap the array in IFERROR to substitute or blank out errors before reshaping — for example
=TOCOL(IFERROR(A1:C10, ""), 1) removes both blanks and errors.
Non-Deterministic Functions¶
The following functions produce different results on every run and will cause generated tests to fail:
- RAND -- returns a random decimal between 0 and 1
- RANDBETWEEN -- returns a random integer within a range
- RANDARRAY -- returns an array of random numbers
These are not calculation errors — the functions are working correctly. However, since each run produces different output, the generated tests cannot match the expected values from Excel.
Workaround: Before importing your workbook, replace cells using these functions with static values (select the cells, copy, then paste as values). This freezes the output so tests can verify against a fixed result.
Functions Not Supported¶
The following categories of Excel functions are not implemented:
- Cube functions (CUBEVALUE, CUBEMEMBER, etc.) -- these require a connection to an OLAP data source
- Web functions (WEBSERVICE, FILTERXML, ENCODEURL) -- these require external HTTP access
- Microsoft 365 exclusive functions (STOCKHISTORY, DETECTLANGUAGE, TRANSLATE) -- these require Microsoft cloud services
Database functions (DAVERAGE, DCOUNT, DSUM, etc.) are supported -- see Database Functions.
See the Alphabetical Function List for the complete list of supported functions.
Reporting Differences¶
If you discover a calculation that produces different results between Codcel and Excel, the generated test documentation is the first place to check. It compares Codcel's output against the values in your Excel workbook for the specific inputs defined there.
For differences not covered in this documentation, please contact support or visit codcel.io.