Skip to content
Sheetwrite

Sheetwrite / Documentation

Detailed compatibility results

Checked formula, workbook, clipboard, and XLSX examples with exact sources and limits.

Detailed compatibility results

This page is generated from checked examples and evidence records. It states only what each named result proves; it is not a percentage or a blanket Excel, Google Sheets, LibreOffice, or OpenFormula compatibility claim.

Result labels distinguish evaluated formulas or structures, preserved source or metadata, deliberately flattened interchange, explicit warning boundaries, and unsupported behavior.

Portable arithmetic, comparison, concatenation, and percent operators formula shared supported
Result
evaluated
Import
Formula source is preserved and evaluated when every token is in the portable subset.
Export
Canonical formula source is emitted to XLSX without cached-value fabrication.
Known boundary
This is a declared portable subset, not every Excel, Sheets, or OpenFormula coercion edge.
Evidence
2 checked evidence records
Open the checked interactive result
Bounded dynamic arrays and spill ranges formula shared partial
Result
evaluated
Import
Recognized formulas evaluate; unknown dynamic-array syntax remains preserved source with an explicit formula error.
Export
Anchor formula source is exported; derived spill cells are not serialized as invented formulas.
Known boundary
No implicit-intersection operator, spill-reference # syntax, multi-key SORT, higher-order LAMBDA array functions, or general Excel/Sheets dynamic-array family is claimed.
Evidence
2 checked evidence records
Open the checked interactive result
Bounded lexical and lazy LET bindings formula excel supported
Result
evaluated
Import
Recognized LET source evaluates within the bounded lexical subset; invalid names, arity, or resource expansion return explicit formula errors.
Export
The exact formula source is preserved and emitted without a fabricated cached result.
Known boundary
At most 126 bindings and 16,384 expanded AST nodes are admitted; LET does not define or execute reusable functions.
Evidence
1 checked evidence record
Open the checked interactive result
LAMBDA and reusable named functions formula excel unsupported
Result
unsupported
Import
Source is preserved; evaluation returns an explicit unsupported-name error.
Export
Preserved source may be emitted, without a fabricated cached result.
Known boundary
LET is supported separately; no approximation, reusable named-function runtime, or JavaScript execution fallback is provided.
Evidence
1 checked evidence record
Open the checked interactive result
Quoted cross-sheet references through stable worksheet identity reference shared supported
Result
evaluated
Import
Native same-workbook references map to stable worksheet IDs.
Export
References are rendered using the current canonical sheet name and quoting rules.
Known boundary
External workbook links and 3-D references are unsupported.
Evidence
2 checked evidence records
Open the checked interactive result
Create, rename, reorder, hide, unhide, remove, and active fallback worksheet shared supported
Result
evaluated
Import
Valid names and visibility are retained; invalid all-hidden workbooks fail or select a visible fallback as specified.
Export
Current Grid active state and ordinary visibility are emitted without mutating shared navigation history.
Known boundary
veryHidden is host-managed and cannot be revealed through the stock tab strip.
Evidence
2 checked evidence records
Open the checked interactive result
veryHidden worksheet preservation worksheet excel roundtrip-only
Result
preserved
Import
The visibility token is retained as host-only state.
Export
The token is emitted when retained by the canonical workbook.
Known boundary
Stock worksheet tabs intentionally do not expose or unhide it.
Evidence
2 checked evidence records
Open the checked interactive result
Independent XLSX strings, numbers, dates, and whitespace xlsx-import openformula supported
Result
evaluated
Import
Expected cells import with zero warnings.
Export
Equivalent Sheetwrite scalar cells export through the optional XLSX package.
Known boundary
Evidence covers this file and version, not all LibreOffice documents.
Evidence
2 checked evidence records
Open the checked interactive result
Styles, merges, validation, notes, panes, names, and hidden sheets xlsx-import openformula partial
Result
warning
Import
Supported native parts become workbook data; unsupported parts emit structured warnings.
Export
Canonical supported parts export; unknown OOXML parts are not promised lossless preservation.
Known boundary
Hidden worksheet visibility produces the recorded unsupported-feature warning for the legacy fixture path.
Evidence
2 checked evidence records
Open the checked interactive result
ECMA-376 shared formula master and translated slaves xlsx-import excel supported
Result
evaluated
Import
Master/slave records import as three exact formula sources.
Export
Equivalent formulas export semantically, not byte-for-byte or record-for-record.
Known boundary
Export writes canonical ordinary formulas rather than promising the producer's shared-record packing.
Evidence
1 checked evidence record
Open the checked interactive result
Native data-validation subset validation excel partial
Result
warning
Import
Supported rules import; unsupported rules do not masquerade as supported validation.
Export
Supported canonical rules emit native validation records.
Known boundary
Unsupported operators or extension forms are dropped with exact structured warnings.
Evidence
1 checked evidence record
Open the checked interactive result
Native workbook tables and structured references xlsx-import excel partial
Result
warning
Import
The bounded native table subset imports with stable identities; unsupported table features emit exact warnings.
Export
Canonical supported tables emit native worksheet relationships and table parts without fabricating unsupported features.
Known boundary
Auto-filter state, sort state, calculated columns, totals functions, query tables, external data, and extensions remain explicit unsupported metadata.
Evidence
1 checked evidence record
Open the checked interactive result
Host-safe external and internal hyperlinks xlsx-import excel partial
Result
warning
Import
Safe external and internal targets import without fetching; unsafe or malformed targets never enter the snapshot.
Export
Safe external targets emit OPC relationships and internal targets emit stable worksheet locations.
Known boundary
Activation remains host-owned; unsafe schemes, malformed ranges, package traversal, and over-limit metadata fail closed or emit exact warnings.
Evidence
1 checked evidence record
Open the checked interactive result
Bounded native conditional formatting style excel partial
Result
warning
Import
Supported rules import in priority order; unsupported and over-limit rules emit exact warnings.
Export
Supported rules emit native differential styles and conditional-format records.
Known boundary
Color scales, data bars, icon sets, extended conditional formatting, and other undeclared rule kinds are not approximated.
Evidence
1 checked evidence record
Open the checked interactive result
Charts, macros, pivots, slicers, Power Query, and external data xlsx-import excel unsupported
Result
unsupported
Import
Known parts emit exact unsupported-feature warnings; unsafe packages fail closed.
Export
Sheetwrite does not fabricate these application parts.
Known boundary
These application features are not imported into a parallel object model and are not claimed to round-trip losslessly.
Evidence
1 checked evidence record
Open the checked interactive result
CSV/TSV and browser clipboard interchange clipboard shared partial
Result
flattened
Import
Bounded delimited text becomes typed columnar data; over-limit input fails explicitly.
Export
Leading formula-like text is neutralized and only the selected/active rectangular data is emitted.
Known boundary
CSV/TSV cannot represent workbook structure, formulas with cached semantics, or rich OOXML features.
Evidence
2 checked evidence records
Open the checked interactive result
Recorded Microsoft Excel-produced test files xlsx-import excel partial
Result
warning
Import
When separately supplied bytes match their recorded hashes, the scheduled check compares exact expected results and warnings. No result exists in the default checkout.
Export
No Excel resave claim is made without separately captured producer evidence.
Known boundary
The workbook bytes and reviewed results are not checked in; missing files cannot support a blanket Excel claim.
Evidence
1 checked evidence record
Open the checked interactive result
Recorded public Google Sheets export xlsx-import google-sheets warning
Result
warning
Import
Separately supplied bytes may verify only the declared export when the file hash matches; missing bytes display unavailable status.
Export
No Google Sheets import or resave behavior is claimed.
Known boundary
The local checkout contains metadata only; most Google Sheets workbook behaviors remain explicitly unverified.
Evidence
2 checked evidence records
Open the checked interactive result

Warning boundaries

FeatureWarning codeMeaning
Styles, merges, validation, notes, panes, names, and hidden sheetsunsupported-featureA LibreOffice-produced workbook with a recorded file hash imports the declared rich subset and exact warning boundary.
Native data-validation subsetunsupported-validationDeclared comparison and list validations round-trip through the canonical validation model.
Native workbook tables and structured referencesunsupported-featureStable table and column identities, body/header/totals/current-row structured references, structural rewrites, and the declared ECMA-376 table subset are implemented.
Host-safe external and internal hyperlinkshyperlinkAbsolute HTTPS/mailto targets and stable same-workbook sheet/range targets round-trip with bounded display and style metadata.
Bounded native conditional formattingformat-lossOrdered formula, comparison, contains-text, and blank predicates evaluate dependency-scoped styles with stop-if-true precedence and a 32-rule sheet limit.
Charts, macros, pivots, slicers, Power Query, and external dataunsupported-featureKnown undeclared OOXML application parts are detected rather than evaluated.
Recorded Microsoft Excel-produced test filesunverified-producer-evidenceFive producer, version, source, and file-hash records are scheduled against the optional XLSX reader.
Recorded public Google Sheets exportunverified-producer-evidenceOne non-redistributed public export has a recorded URL, producer, file hash, expected subset, and warning boundary.
Technical evidence file details and checksums
formula-engine-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original parser, evaluator, dependency, and spill vectors maintained in this repository.
SHA-256
source-controlled test or manifest
Checked result
operators; quoted references; FILTER/SORT/UNIQUE spills; explicit errors
Warnings
none
formula-document-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original document, clipboard, history, snapshot, and spill lifecycle vectors.
SHA-256
source-controlled test or manifest
Checked result
spill ownership; copy; history; snapshot; dependency invalidation
Warnings
none
worksheet-lifecycle-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original stable-ID worksheet lifecycle and active-session export vectors.
SHA-256
source-controlled test or manifest
Checked result
rename; reorder; visibility; active fallback; undo; rebase
Warnings
none
worksheet-xlsx-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original in-memory OOXML packages authored from ECMA-376 worksheet structures.
SHA-256
source-controlled test or manifest
Checked result
canonical names; quoted references; visibility; activeTab; visible-sheet invariant
Warnings
none
libreoffice-positive independent-xlsx

LibreOffice 26.2.4.2 build 64a984c51f4702dbd3710b13428c673a2f1292e7

Source
Headless LibreOffice conversion; command and source checksum are recorded in fixtures/manifest.json.
SHA-256
cb7cba1a9a804d7115f69da5730a3186b8ea343eb959eb1e8c3e7b95d9ec3a65
Checked result
strings; numbers; date-formatted numbers; whitespace; multiple rows
Warnings
none
libreoffice-rich independent-xlsx

LibreOffice 26.2.4.2 build 64a984c51f4702dbd3710b13428c673a2f1292e7

Source
Produced independently through LibreOffice UNO; generator checksum is recorded in fixtures/manifest.json.
SHA-256
75fb643cafcbe660caaff5062423403a592fc483d3dedf8e76ad9b3a006883c2
Checked result
formulas; styles; merges; validation; notes; freeze panes; named range
Warnings
unsupported-feature: hidden worksheet visibility
ecma-shared-formula spec-xlsx

Hand-authored ECMA-376 package fflate 0.8.3

Source
Implementation-neutral shared-formula master/slave XML; generator checksum is recorded in fixtures/manifest.json.
SHA-256
330da901b938e598948c13e8f1e0530b4691a67c4c23c4841c866d9bd74468a5
Checked result
shared formula master; two translated slaves
Warnings
none
xlsx-conformance-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Retyped implementation-neutral OOXML vectors; no upstream workbook bytes are redistributed.
SHA-256
source-controlled test or manifest
Checked result
formats; merges; validation warnings; notes; views; defined names
Warnings
exact structured unsupported-feature warnings
workbook-table-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original minimal OOXML table packages with ECMA-376 clause URLs and archive checksums; no producer test suite is copied.
SHA-256
source-controlled test or manifest
Checked result
stable table and column IDs; structured references; native table parts; unsupported table metadata warnings
Warnings
exact unsupported table feature warnings
hyperlink-conditional-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original minimal OPC/SpreadsheetML vectors with ECMA-376 clause URLs and archive checksums.
SHA-256
source-controlled test or manifest
Checked result
HTTPS and mailto links; stable internal links; bounded conditional formats; round-trip style and stop precedence
Warnings
unsafe hyperlink and unsupported conditional-format warnings
external-producer-manifest manifest

Apache POI test fixtures and public Google Sheets export POI commit 913c78891bd0cd20945b050c63abfb8c66c88009

Source
Pinned producer/version/checksum records; byte execution is scheduled or supplied through SHEETWRITE_EXTERNAL_XLSX_DIR.
SHA-256
source-controlled test or manifest
Checked result
five Excel-family records; one Google Sheets record; explicit unverified features
Warnings
producer claims remain partial until checksum-locked bytes execute
clipboard-vectors original-test

Sheetwrite v0.3 protocol 3

Source
Original clipboard and delimited-text security/round-trip vectors.
SHA-256
source-controlled test or manifest
Checked result
plain text; HTML; formulas; refs; styles; injection neutralization
Warnings
none
interop-browser-contract original-test

Sheetwrite v0.3 protocol 3

Source
Real-browser contract over the optional XLSX package and public Grid APIs.
SHA-256
source-controlled test or manifest
Checked result
fixture import; round trip; warnings; limits; package isolation
Warnings
unsupported behavior remains visible

Exact sources