The practical answer
Export stale-cache.xlsx directly to observe 20,24 and total 44. The independent calculation is 3×10=30 plus 2×12=24, totaling 54. Recalculate and save a copy in a capable spreadsheet application, export again and review every sheet. Missing caches remain unresolved/blank, not invented zeros.
Complete exercise: reproduce the fault, then compare the answer
stale-cache.xlsx,missing-cache.xlsx and checked-reference.xlsx all contain Orders and Notes. They are editorial teaching fixtures: the faulty copies alter or remove only D2/D4 caches, retaining inputs and formula text. They are not a recorded real-world Excel defect.
| SKU | Quantity×price | Stale cache | Correct reference |
|---|---|---|---|
| 0007 | 3×10; D2=B2*C2 | 20 | 30 |
| A,08 | 2×12; D3=B3*C3 | 24 | 24 |
| TOTAL | D4=SUM(D2:D3) | 44 | 54 |
| File | Expected D2/D3/D4 reading | Condition |
|---|---|---|
| stale-cache.xlsx | 20 / 24 / 44 | Export directly before another application recalculates it |
| missing-cache.xlsx | Blank / 24 / blank | Missing is not zero; resolve source calculations |
| checked-reference.xlsx | 30 / 24 / 54 | Calculated teaching answer, not a desktop Excel test |
Notes records batch TRAINING-27, two detail records, independent total 54 and fictional provenance. Orders has two details plus a total row; neither Notes metadata nor TOTAL is another transaction.
Separate formula, cached result and display format
The ExcelJS formula documentation explains that the library does not calculate formula results. An XLSX file can store both a formula and a previously saved result. Changing an input without recalculation can leave that result stale. Missing results can also become empty fields; they should not silently become zero.
KitNelo converts the existing cell text for each worksheet into CSV. It is not a formula engine or a complete workbook backup. Fonts, comments, merged layout and calculation dependencies cannot be recovered from CSV.
Checking that the amount column contains two numbers is insufficient. Derive 30 and 24 from the source quantities and prices. A total that uses another stale cache can agree with incorrect details while still being wrong.
An internally consistent total can still fail
Exported amounts 20 and 24 add correctly to 44
Original inputs give 3×10+2×12=54; the first line is short by 10
Follow the path: faulty export, recalculated copy, fresh export
Current CSV output includes a UTF-8 BOM. Parse it properly; if the first header has an invisible extra character, inspect the receiver’s BOM handling. Sheets export separately; resolve sanitized filename collisions at the source. Continue with CSV/JSON record checks, or the column-aligned merge guide when appending other sources.
- Open Excel document tools, choose Excel to CSV and convert stale-cache.xlsx. Do not open/save it in a recalculating application first if you want to observe the injected fault.
- Download and unpack excel-csv.zip. Find both Orders.csv and Notes.csv. Orders has a header, two details and one TOTAL row, with 20,24,44. Independently calculate 54 from quantities/prices to locate the missing 10 in record 1.
- Open the source in a trusted formula-capable spreadsheet program, confirm inputs/references, recalculate and save a new copy. Automatic calculation may happen immediately on opening; do not alter global settings to preserve the fault.
- Export the saved copy and verify Orders 30/24/54 plus the Notes batch context. Without a formula engine, use checked-reference.xlsx to practice reading/reconciliation, without claiming a native Excel recalculation was performed.
- Try missing-cache.xlsx: D2/D4 must be blank and D3 must remain 24. Keep unresolved status until reliable results exist; do not substitute 0 or a formula string for an amount.
Do not add the total twice or reinterpret an identifier
Sum only the two detail amounts:30+24=54. Adding the TOTAL row again gives 108, a double count. Three CSV data rows do not mean three transactions; state the record unit in the handoff.
Preserve SKU 0007 and A,08 character for character. A,08 needs CSV quoting. If double-click opening shows 7, the receiving application may have inferred a number. Inspect the raw CSV, then import the ID column as text using the CSV-to-Excel type checks.
Complete two-CSV handoff checks
- Both Orders.csv and Notes.csv exist with clear sheet-to-file mapping.
- Details are 30 and 24; TOTAL is 54, with details aggregated only once.
- Keep 0007 and A,08 intact and distinguish a missing cache from a real zero.
- Retain the faulty input, recalculated copy and CSV version mapping, including calculation conditions and unresolved items.
Choose the correct place to repair a failure
Use this workflow for static records, not macros, formulas, charts or cross-sheet relationships. Test the receiving system with the synthetic fixture rather than sensitive customer or billing files.
Wrong amounts require checking source caches and references. Shifted fields require checking quoting and encoding. Missing sheets require inspecting archive members and name collisions. These faults occur at different boundaries; repeating conversion does not repair incorrect source data.
Common questions
Can I use formula text when the cached result is missing?
A formula is not a calculated amount. Obtain a valid result in trusted software, or record the unmet dependency.
Why does 0007 become 7 when I open CSV?
The receiving application may infer a numeric type. Inspect the raw CSV first, then import the column as text.
Can two sheets become one CSV automatically?
The current workflow packages each sheet separately. Define column alignment and source fields before creating a combined table.
Further reading & sources
Put the guide into practice
Open the relevant tool, preview the result and check your exported file.


