Tables & autoFilter

Excel Tables, table styles, and column-level autoFilter.

5 exports from 2 source files

Table

src/worksheet/table.ts

addExcelTable function

src/worksheet/table.ts:112

High-level wrapper that builds a TableDefinition + pushes it onto ws.tables in one call. Auto-assigns the workbook-unique id, derives displayName from the supplied name, and constructs TableColumn records (1-based ids) from a string-array shorthand.

Goes through addTable, so the definition is checked against the sheet before it lands. Pass headerRowCount: 0 for a genuinely header-less table.

function addExcelTable(wb: Workbook, ws: Worksheet, opts: { autoFilter?: AutoFilter; columns: readonly (string | TableColumn)[]; displayName?: string; headerRowCount?: number; name: string; ref: string; style?: string; styleInfo?: TableStyleInfo; totalsRowCount?: number; totalsRowShown?: boolean }): TableDefinition

Parameters

NameTypeDescription
wb Workbook
ws Worksheet
opts { autoFilter?: AutoFilter; columns: readonly (string | TableColumn)[]; displayName?: string; headerRowCount?: number; name: string; ref: string; style?: string; styleInfo?: TableStyleInfo; totalsRowCount?: number; totalsRowShown?: boolean }

Returns

TableDefinition

makeTableColumn function

src/worksheet/table.ts:62
function makeTableColumn(opts: { id: number; name: string }): TableColumn

Parameters

NameTypeDescription
opts { id: number; name: string }

Returns

TableColumn

makeTableDefinition function

src/worksheet/table.ts:66
function makeTableDefinition(opts: { autoFilter?: AutoFilter; columns?: TableColumn[]; displayName: string; headerRowCount?: number; id: number; name?: string; ref: string; styleInfo?: TableStyleInfo; totalsRowCount?: number; totalsRowShown?: boolean }): TableDefinition

Parameters

NameTypeDescription
opts { autoFilter?: AutoFilter; columns?: TableColumn[]; displayName: string; headerRowCount?: number; id: number; name?: string; ref: string; styleInfo?: TableStyleInfo; totalsRowCount?: number; totalsRowShown?: boolean }

Returns

TableDefinition

Auto filter

src/worksheet/auto-filter.ts

makeAutoFilter function

src/worksheet/auto-filter.ts:68
function makeAutoFilter(opts: { filterColumns?: FilterColumn[]; ref: string }): AutoFilter

Parameters

NameTypeDescription
opts { filterColumns?: FilterColumn[]; ref: string }

Returns

AutoFilter

makeFilterColumn function

src/worksheet/auto-filter.ts:72
function makeFilterColumn(opts: { blank?: boolean; colId: number; values: readonly string[] }): { blank?: boolean; colId: number; kind: "filters"; values: string[] }

Parameters

NameTypeDescription
opts { blank?: boolean; colId: number; values: readonly string[] }

Returns

{ blank?: boolean; colId: number; kind: "filters"; values: string[] }