-
Notifications
You must be signed in to change notification settings - Fork 610
excel detectedtable
goworm edited this page Jun 26, 2026
·
1 revision
A read-only synthetic node for a header-row block heuristically detected in unstructured cells (not a real ListObject), surfaced in query / outline results and used to resolve row[ColumnName op value] predicates.
Path: /SheetName/A1:C10
- get - Read the detected block's attributes (read-only)
This node is never created, set, or removed via the CLI. To turn a detected block into a real table, use add table.
| Attribute | Type | Description |
|---|---|---|
source |
string | always header-sniff — marks the node as a heuristically-detected block rather than a ListObject. |
stable |
bool | always false — a detected block's boundaries may shift as surrounding cells change (a real ListObject has a fixed ref). |
ref |
string | A1 range of the whole detected block including the header row. |
columns |
string | comma-separated detected header names (used to resolve row[ColumnName op value] predicates). |
dataRange |
string | A1 range of the data body only (header row excluded). |
# Surface detected tables via a table-selector query
officecli query data.xlsx "detectedtable"
# Read attributes of a detected block by its range
officecli get data.xlsx /Sheet1/A1:C10 --type detectedtable
# Use the detected columns to resolve a row predicate
officecli query data.xlsx "row[Region = West]"- A detected table is a synthetic node, not a real
ListObject. It is not independently addressable, creatable, or settable. - It appears as a
Type=detectedtablenode insidequery <table-selector>and outline results. - Its detected header names back
row[ColumnName op value]predicate resolution. -
stableis always false because the block's boundaries can shift as cells change. - To make a detected block into a real table, use
add table.
- Table - Real ListObject tables (creatable / settable)
- Pivot Table - Pivot table element
- Excel Reference - All Excel elements
Based on OfficeCLI v1.0.119