Документация HotXLS

Расширенные члены API XLSX

Эти члены охватывают менее распространённые, но публичные поверхности редактирования XLSX, дополняющие основные справочные страницы книг, листов, диапазонов, стилей, фильтров и диаграмм

Области листа, отображение и фон

TXLSXWorksheet.SplitPanes и RemoveSplit редактируют состояние разделённых областей; SplitRow, SplitCol, PaneStateKindи ScrollCol предоставляют сохранённые координаты представления

DisplayRowColHeaders управляет заголовками строк и столбцов, GridLinesSet отличает явный выбор линий сетки от значения по умолчанию, а DefaultFormat вместе с StyleOverlays предоставляют состояние стилей уровня листа

BackgroundImageData и BackgroundImageFormat предоставляют фоновое изображение листа, а BackgroundImageResource удаляет его ClearBackgroundImage removes it

Pane selections and scrolling

GetSelectedAreas and the pane-first SelectAreas overload use the shared TXLSPanePosition типа; сохраняют упорядоченные и перекрывающиеся области A1 и возвращают снимки во владении вызывающего с индексом активной области

Структурные правки целых строк и столбцов перемапят каждое выделение панелей, сохраняют порядок выживших и идентичность активной области и используют детерминированные отступления к преемнику, предшественнику или граничной ячейке, когда активная область удалена

Нормализация выделения, структурное перемапирование и построение снимков используют однопроходные конструкторы и геометрический рост ёмкости для обработки больших областей с амортизированной линейностью

TryGetWindowScroll and ScrollWindow используют те же логические панели и координаты с отсчётом от 1, сохраняя общее sheetView and lower or right pane scroll positions independently

Отсутствующие панели и невалидные обновления оставляют лист без изменений; см. Worksheet pane selections and scrolling

Диапазоны удержания вместе при разбиении на страницы

KeepRowsTogether, ClearKeepRowsTogether, KeepColumnsTogether, ClearKeepColumnsTogetherи KeepTogetherCount определяют блоки, которые должны оставаться на одной странице там, где геометрия это допускает

BreakSplitsKeepBlock, ColBreakSplitsKeepBlock, KeepBlockBreakRowи KeepColBlockBreakCol проверяют, как предлагаемые разрывы страниц взаимодействуют с этими блоками

Вспомогательные средства редактирования листов

AddImagePair записывает основное изображение вместе с резервным спутником, например SVG и PNG, AddChartFromRanges строит диаграмму по типизированным диапазонам категорий и значений, а CheckDataValidations возвращает каждую нарушающую ячейку

CheckDataValidation — расширенная точка входа устойчивой сортировки, используемая операциями диапазонов и отчётов; вызывающим кодом обычно следует предпочитать -1 или

GetCellVisibleFormat вычисляет эффективное форматирование листа, строки, столбца, наложения диапазона и явной ячейки, не создавая пустую ячейку; Subtotal группирует отсортированный диапазон по изменениям одного столбца и вставляет формулы промежуточных итогов, опциональные формулы общих итогов, унаследованное форматирование и уровни структуры

SortRangeInternal — продвинутая точка входа стабильной сортировки, используемая операциями диапазонов и отчётов; вызывающим обычно стоит предпочесть SortRange or TXLSXRange.Sort

ClearColWidth and ClearRowHeight удаляют явную размерность одного столбца или строки, чтобы она возвращалась к умолчанию листа, дополняя HasColWidth / HasRowHeight probes

Преобразование формул

TryGetOutlineNode заменяет одну формулу её кэшированным значением, а

SetOutlineNodeCollapsed идемпотентно сворачивает или разворачивает один итоговый узел, тогда как SetOutlineDisplayLevel применяет уровень кнопки структуры (отсчёт с 1) по каждой материализованной группе; оба принимают xocPreserve, xocCollapse, or xocExpand child handling

ToggleRowGrouped and ToggleColGrouped остаются совместимыми обёртками, принимающими первый детальный индекс и вычисляющими фактический итоговый узел из SummaryBelow or SummaryRight

Нативные группы строк и столбцов OpenDocument отображаются через table:display, переживают прямые правки метаданных и структуры и конвертируются в маркеры итоговых узлов XLSX, не сохраняя флаги свёрнутости на уровне членов; см. Sparse outline geometry

Named styles and table-style resolution

TXLSXRange.ApplyNamedStyle links a range to a named cell style; TXLSXLinkedStyle.AutomaticChoose выводит затронутые части формата из стиля, тогда как LinkedParts выбирает шрифт, заливку, границу, числовой формат, выравнивание или защиту явно

Editing TXLSXNamedStyle.Style обновляет связанные части, не отбрасывая локальные переопределения, а GetCellVisibleFormat вычисляет результат вместе с наложениями листа и стилями таблиц, не материализуя пустые ячейки

TXLSXNamedStyles.FindByName находит запись именованного стиля по её отображаемому имени без ручного сканирования коллекции

Все 60 встроенных имён табличных стилей семейств light, medium и dark разрешаются в полные основанные на теме форматы секций, общие для вывода HTML, PDF, изображений, предпросмотра и просмотрщика

Formula conversion

TXLSXCell.ConvertFormulaToValue заменяет одну формулу её кэшированным значением, а TXLSXCells.ConvertFormulasToValues применяет ту же операцию к сохранённой коллекции ячеек

Formula entry validation

TXLSXWorkbook.FormulaEntryPolicy and TXLSXWorksheet.ValidateFormulaEntry предоставляют общий контракт входа формул без мутаций, различают пустой текст, неизвестные функции, неизвестные имена, синтаксические сбои и невалидные цели и распознают зарегистрированные пользовательские функции, не вызывая их; см. Formula entry validation policy

Cell storage diagnostics

TXLSXCells.PackedStorageEnabled управляет упакованным RLE-бэкендом, используемым совместимыми типизированными массовыми записями в порядке «строка за строкой», а PackedCellCount сообщает ячейки, удерживаемые там, до того как доступ уровня объектов материализует стабильные дескрипторы ячеек

GetStorageStatistics применяет ту же операцию к сохранённой коллекции ячеек

Детали автофильтра

TXLSXAutoFilterColumn.ClearValueFilters очищает фильтры значений и группировки по датам, сохраняя запись столбца

HasCriteria2 и AndConnector описывают пользовательские фильтры с двумя условиями; цветовые фильтры используют HasColorFilter, HasColorFilter_CellColorи HasColorFilter_DxfId; фильтры значков используют HasIconFilter, HasIconFilter_Setи HasIconFilter_Id

Динамические фильтры используют HasDynamicFilter, HasDynamicFilter_Type, HasDynamicFilter_Val, HasDynamicFilter_ValSet, HasDynamicFilter_MaxValи HasDynamicFilter_MaxValSet; RawXml сохраняет неподдерживаемое содержимое фильтра

Градиентные заливки

TXLSXFill.AddGradientStop добавляет точку остановки цвета. GradientKind, GradientDegree, GradientLeft, GradientTop, GradientRight, GradientBottom, GradientStopCountи GradientStops предоставляют линейную или контурную геометрию

BackgroundColorTheme, BackgroundColorIndexи BackgroundTintAndShade сохраняют фоновые цвета, отличные от RGB, а TXLSXFills.AddLinearGradient создаёт и регистрирует полный линейный градиент

TXLSXFill.ForegroundColorTheme, ForegroundColorIndex, and ForegroundTintAndShade — их аналоги для переднего плана, сохраняющие цвета переднего плана темы, индекса палитры и tint-and-shade рядом со значением RGB

Диаграммы

TXLSXChart предоставляет PlotGroupCount, ChartStyle, DispBlanksAs, PlotVisibleOnlyи DataLabelsRange фасада, чей сеттер рассылает значение текущим рядам и задаёт начальное будущим, а геттер возвращает только общую формулу для всех рядов

TXLSXChartPlotGroup.Assign копирует группу построения; ZOrder, BarGrouping, GapWidthи Overlap управляют её порядком и геометрией столбцов

TXLSXChartSeries предоставляет SolidFillHex, SolidFillSet, MarkerSymbol, MarkerSize, MarkerSet, LabelNumFmt, LabelNumFmtSet, LabelPosи LabelPosSet

Per-series cell-sourced labels use DataLabelsRange, DataLabelsCache, ShowDataLabelsRange, and ShowDataLabelsRangeSet; SetPointShowDataLabelsRange and TryGetPointShowDataLabelsRange поддерживают разреженные переопределения видимости с нулевой базой, тогда как ResolveDataLabelsRange обновляет доступный текст листа один раз на поколение книги и удерживает внешние кэши, не открывая источник данных

TXLSXChartSeries.CategoriesMultiLevel emits c:multiLvlStrRef категории для иерархических подписей оси, тогда как значение по умолчанию оставляет плоский c:strRef / c:numRef emission

TXLSXChartTrendline exposes Interceptпредоставляет InterceptSet, Forwardи Backward , а TXLSXChartAxis.ShowDispUnitsLabel управляет подписью единиц отображения

Условные форматы и проверки

TXLSXConditionalFormat.ContainsCellFast выполняет индексированную проверку принадлежности, HasStyle сообщает о дифференциальном стиле, а StdDev, EqualAverage, and IsPivot expose advanced rule flags

TXLSXConditionalFormat.AcquireWriteGuard и IXLSWorkbookWriteGuard предоставляют расширенные флаги правил

TXLSXDataValidation.ContainsCellFast выполняет эквивалентную индексированную проверку принадлежности к диапазону проверки

Таблицы, листы, ссылки, примечания и рисунки

TXLSXTable.TableType, ConnectionId, ColumnQueryTableFieldIdsи HasHeaderRow сохраняют метаданные таблиц на основе запросов и таблиц без заголовков

TXLSXTable.FindFirst дублирует лист вместе с зависимыми объектами, а FindNext обращается к коллекции по текущей позиции вкладки

TXLSXSheets.AddCopy и ByPos поддерживают кэшированные внешние имена;

TXLSXExternalLink.AddDefinedName and DefinedNameCount maintain cached external names and FindDefinedName находит одну запись по имени; доступные только для чтения RelationshipId, SourceSlot, and LinkKind свойства раскрывают id связи части внешних ссылок, отсчитываемый с единицы [N] слот, используемый внешними формулами, и классификацию ссылки (книга, DDE, OLE или неизвестная); TXLSXHyperlink.TargetFrame preserves the target browsing context

TXLSXDefinedName.UnknownAttributes сохраняет целевой контекст просмотра

TXLSXComment.AutoSizeFromText подгоняет размер фигуры примечания под её текст, а ClearFont удаляет явные форматированные фрагменты шрифта

TXLSXImage.SvgData хранит SVG-спутник, а CameraRange определяет исходный диапазон связанного изображения; TXLSXTextBox.PrstToken сохраняет токен геометрии из набора DrawingML

Изображения разделяют данные без копирования байтов: присвоение TXLSXImage.Blob (the IXLSXImageBlob interface with Data, SvgData, CacheKey, ContentDigest, SvgContentDigest, and ByteSize) — путь без копирования для повторяющихся изображений отчётов, дайджесты вычисляются один раз для интернирования медиа при сохранении, а доступные только для чтения TXLSXImage.CacheKey and ContentDigest сообщают назначенную идентичность; кэш отчётов отклоняет один ключ кэша, повторно используемый с другими байтами или форматами

DrawingObjectCount and DrawingObject предоставляют единый стабильный смешанный порядок по изображениям, диаграммам, текстовым полям, сохранённым сырым якорям и группам; каждый TXLSXDrawingObject exposes Kind, Parent, ChildCount, and TextBox, and can be reordered with BringToFront, SendToBack, BringForward, and SendBackward

GroupDrawingObjects создаёт учитывающую трансформации группу DrawingML из выбранных объектов, а UngroupDrawingObject восстанавливает её дочерние элементы по порядку, включая группы, загруженные из существующего пакета

Классические аналоги листов

TXLSWorksheet.SetBackgroundImage, ClearBackgroundImage, and BackgroundImageResource создают, удаляют и осматривают фоны листов BIFF8; данные битмапа предоставляются как стандартный BMP, нативные или неизвестные форматы сохраняют сырые данные и код формата, а известные фоны конвертируются в обе стороны между движками Classic и XLSX

TXLSWorksheet.ConvertFormulasToValues заменяет формулы кэшированными результатами, перегрузки OpenRTF импортируют RTF-таблицу в целевой диапазон по умолчанию или выбранный вызывающим кодом, WriteAutoValue выбирает тип ячейки из варианта, а DefaultFormat предоставляет формат XF листа по умолчанию

См. также