HotXLS Docs

Advanced XLSX API members

These members cover less common but public XLSX editing surfaces that complement the primary workbook, worksheet, range, style, filter, and chart reference pages

Worksheet panes, display, and background

TXLSXWorksheet.SplitPanes and RemoveSplit edit split-pane state; SplitRow, SplitCol, PaneStateKind, and ScrollCol expose the stored view coordinates

DisplayRowColHeaders controls row and column headings, GridLinesSet distinguishes an explicit gridline choice from the default, and DefaultFormat plus StyleOverlays expose sheet-level style state

BackgroundImageData and BackgroundImageFormat expose the worksheet background image, BackgroundImageResource provides a backend-neutral read-only payload and format description, and ClearBackgroundImage removes it

Pane selections and scrolling

GetSelectedAreas and the pane-first SelectAreas overload use the shared TXLSPanePosition type, preserve ordered and overlapping A1 areas, and return caller-owned snapshots with the active area index

Whole-row and whole-column structural edits remap every pane selection, preserve surviving order and active-area identity, and use deterministic successor, predecessor, or boundary-cell fallbacks when the active area is removed

Selection normalization, structural remapping, and snapshot construction use one-pass builders and geometric capacity growth for amortized-linear large-area processing

TryGetWindowScroll and ScrollWindow use the same logical panes and 1-based coordinates while retaining overall sheetView and lower or right pane scroll positions independently

Missing panes and invalid updates leave the worksheet unchanged; see Worksheet pane selections and scrolling

Pagination keep-together ranges

KeepRowsTogether, ClearKeepRowsTogether, KeepColumnsTogether, ClearKeepColumnsTogether, and KeepTogetherCount define blocks that should remain on one page where geometry permits

BreakSplitsKeepBlock, ColBreakSplitsKeepBlock, KeepBlockBreakRow, and KeepColBlockBreakCol inspect how proposed page breaks interact with those blocks

Worksheet editing helpers

AddImagePair writes a primary image plus fallback companion such as SVG and PNG, AddChartFromRanges builds a chart from typed category and value ranges, and CheckDataValidations returns every violating cell

CheckDataValidation tests one candidate value against every validation rule covering a cell, returns -1 when valid or the 1-based index of the first failing rule, and optionally commits only a valid candidate

GetCellVisibleFormat resolves the effective worksheet, row, column, range-overlay, and explicit cell formatting without creating an empty cell; Subtotal groups a sorted range by changes in one column and inserts subtotal formulas, optional grand-total formulas, inherited formatting, and outline levels

SortRangeInternal is the advanced stable-sort entry point used by range and report operations; callers should normally prefer SortRange or TXLSXRange.Sort

ClearColWidth and ClearRowHeight remove one column's or row's explicit dimension so it falls back to the sheet default, complementing the HasColWidth / HasRowHeight probes

Outline-node control

TryGetOutlineNode returns the direction-aware summary node, detail range, outline level, hidden state, and explicit collapse marker for a one-based row or column index

SetOutlineNodeCollapsed idempotently collapses or expands one summary node, while SetOutlineDisplayLevel applies the one-based outline-button level across every materialized group; both accept xocPreserve, xocCollapse, or xocExpand child handling

ToggleRowGrouped and ToggleColGrouped remain compatibility wrappers that accept the first detail index and resolve the actual summary node from SummaryBelow or SummaryRight

Native OpenDocument row and column groups map through table:display, survive direct metadata and structural edits, and convert to XLSX summary-node markers without retaining member-level collapse flags; see Sparse outline geometry

Named styles and table-style resolution

TXLSXRange.ApplyNamedStyle links a range to a named cell style; TXLSXLinkedStyle.AutomaticChoose derives the affected format parts from the style, while LinkedParts selects font, fill, border, number format, alignment, or protection explicitly

Editing TXLSXNamedStyle.Style updates linked parts without discarding local overrides, and GetCellVisibleFormat resolves the result together with worksheet overlays and table styles without materializing blank cells

TXLSXNamedStyles.FindByName locates a named style entry by its display name without scanning the collection manually

All 60 built-in light, medium, and dark table-style names resolve to complete theme-based section formats shared by HTML, PDF, image, preview, and viewer output

Formula conversion

TXLSXCell.ConvertFormulaToValue replaces one formula with its cached value and TXLSXCells.ConvertFormulasToValues applies the same operation to the stored cell collection

Formula entry validation

TXLSXWorkbook.FormulaEntryPolicy and TXLSXWorksheet.ValidateFormulaEntry expose the shared mutation-free formula entry contract, distinguish empty text, unknown functions, unknown names, syntax failures, and invalid targets, and recognize registered user functions without invoking them; see Formula entry validation policy

Cell storage diagnostics

TXLSXCells.PackedStorageEnabled controls the packed RLE backend used by compatible row-major typed bulk writes, and PackedCellCount reports the cells retained there before object-level access materializes stable cell handles

GetStorageStatistics reports row blocks, populated rows, object, text, formula, rich-text, estimated packed, active packed, allocated, used, and packed-string byte counts for measurable memory decisions; style-payload counts and avoided styled-blank payload bytes expose copy-on-write sharing directly

AutoFilter details

TXLSXAutoFilterColumn.ClearValueFilters clears value and date-group filters while retaining the column entry

HasCriteria2 and AndConnector describe two-condition custom filters; color filters use HasColorFilter, HasColorFilter_CellColor, and HasColorFilter_DxfId; icon filters use HasIconFilter, HasIconFilter_Set, and HasIconFilter_Id

Dynamic filters use HasDynamicFilter, HasDynamicFilter_Type, HasDynamicFilter_Val, HasDynamicFilter_ValSet, HasDynamicFilter_MaxVal, and HasDynamicFilter_MaxValSet; RawXml preserves unsupported filter payload

Gradient fills

TXLSXFill.AddGradientStop appends a color stop. GradientKind, GradientDegree, GradientLeft, GradientTop, GradientRight, GradientBottom, GradientStopCount, and GradientStops expose linear or path geometry

BackgroundColorTheme, BackgroundColorIndex, and BackgroundTintAndShade preserve non-RGB background colors, and TXLSXFills.AddLinearGradient creates and registers a complete linear gradient

TXLSXFill.ForegroundColorTheme, ForegroundColorIndex, and ForegroundTintAndShade are the foreground counterparts, preserving theme, palette-index, and tint-and-shade foreground colors beside the RGB value

Charts

TXLSXChart exposes PlotGroupCount, ChartStyle, DispBlanksAs, PlotVisibleOnly, and the compatibility DataLabelsRange facade, whose setter broadcasts to current series and seeds later series while its getter returns only a common per-series formula

TXLSXChartPlotGroup.Assign copies a plot group; ZOrder, BarGrouping, GapWidth, and Overlap control its ordering and bar geometry

TXLSXChartSeries exposes SolidFillHex, SolidFillSet, MarkerSymbol, MarkerSize, MarkerSet, LabelNumFmt, LabelNumFmtSet, LabelPos, and LabelPosSet

Per-series cell-sourced labels use DataLabelsRange, DataLabelsCache, ShowDataLabelsRange, and ShowDataLabelsRangeSet; SetPointShowDataLabelsRange and TryGetPointShowDataLabelsRange maintain sparse zero-based visibility overrides, while ResolveDataLabelsRange refreshes accessible worksheet text once per workbook generation and retains external caches without opening a data source

TXLSXChartSeries.CategoriesMultiLevel emits c:multiLvlStrRef categories for hierarchical axis labels while the default keeps the flat c:strRef / c:numRef emission

TXLSXChartTrendline exposes Intercept, InterceptSet, Forward, and Backward forecast periods, while TXLSXChartAxis.ShowDispUnitsLabel controls the display-units label

Conditional formats and validations

TXLSXConditionalFormat.ContainsCellFast performs indexed membership checks, HasStyle reports a differential style, and StdDev, EqualAverage, and IsPivot expose advanced rule flags

TXLSXConditionalFormat.AcquireWriteGuard returns the workbook's IXLSWorkbookWriteGuard so batched rule edits advance the workbook generation once on completion

TXLSXDataValidation.ContainsCellFast performs the equivalent indexed validation-range membership check

Tables, sheets, links, comments, and drawings

TXLSXTable.TableType, ConnectionId, ColumnQueryTableFieldIds, and HasHeaderRow preserve query-backed and headerless table metadata

TXLSXTable.FindFirst and FindNext scan a caller-supplied worksheet for rows whose named column equals a value, returning a 1-based row or 0, with case-insensitive string, numeric, and boolean comparisons

TXLSXSheets.AddCopy duplicates a worksheet with dependent objects and ByPos accesses the collection by current tab position

TXLSXExternalLink.AddDefinedName and DefinedNameCount maintain cached external names and FindDefinedName locates one entry by name; the read-only RelationshipId, SourceSlot, and LinkKind properties expose the relationship id of the external-link part, the 1-based [N] slot used by external formulas, and the link classification (workbook, DDE, OLE, or unknown); TXLSXHyperlink.TargetFrame preserves the target browsing context

TXLSXDefinedName.UnknownAttributes preserves unrecognized attributes on a defined name so unsupported extensions survive round trips

TXLSXComment.AutoSizeFromText sizes the comment shape to its text and ClearFont removes explicit rich-text font runs

TXLSXImage.SvgData stores the SVG companion and CameraRange identifies a linked-picture source range; TXLSXTextBox.PrstToken preserves the DrawingML preset geometry token

Images share payloads without copying bytes: assigning TXLSXImage.Blob (the IXLSXImageBlob interface with Data, SvgData, CacheKey, ContentDigest, SvgContentDigest, and ByteSize) is the zero-copy path for repeated report images, the digests are computed once for save-time media interning, and the read-only TXLSXImage.CacheKey and ContentDigest report the assigned identity; the report cache rejects one cache key reused with different bytes or formats

DrawingObjectCount and DrawingObject expose one stable mixed order across images, charts, text boxes, preserved raw anchors, and groups; each TXLSXDrawingObject exposes Kind, Parent, ChildCount, and TextBox, and can be reordered with BringToFront, SendToBack, BringForward, and SendBackward

GroupDrawingObjects creates a transform-aware DrawingML group from selected objects and UngroupDrawingObject restores its children in order, including groups loaded from an existing package

Classic worksheet counterparts

TXLSWorksheet.SetBackgroundImage, ClearBackgroundImage, and BackgroundImageResource author, remove, and inspect BIFF8 worksheet backgrounds; bitmap data is exposed as a standard BMP, native or unknown formats retain their raw payload and format code, and known backgrounds convert in either direction between the Classic and XLSX engines

TXLSWorksheet.ConvertFormulasToValues replaces formulas with cached results, the OpenRTF overloads import an RTF table at the default or caller-selected target, WriteAutoValue selects a cell type from a variant, and DefaultFormat exposes the worksheet default XF

See also