lxHandleX
type
TXLSXTextBox = class
constructor Create(const AText: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer);
property Text: WideString;
property FromRow, FromCol, ToRow, ToCol: Integer;
end;
TXLSXIgnoredError = class
constructor Create(const ASqRef: WideString);
procedure Assign(Source: TXLSXIgnoredError);
property SqRef: WideString;
property EvalError: Boolean;
property TwoDigitTextYear: Boolean;
property NumberStoredAsText: Boolean;
property Formula: Boolean;
property FormulaRange: Boolean;
property UnlockedFormula: Boolean;
property EmptyCellReference: Boolean;
property ListDataValidation: Boolean;
property CalculatedColumn: Boolean;
end;
TXLSXIgnoredErrors = class
function Add(const ASqRef: WideString): TXLSXIgnoredError;
function AddExisting(Source: TXLSXIgnoredError): TXLSXIgnoredError;
procedure Delete(Index: Integer);
procedure Clear;
property Count: Integer;
property Items[Index: Integer]: TXLSXIgnoredError; default;
end;
TXLSXScenarioInputCell = class
property Ref: WideString;
property Value: WideString;
property NumberFormatId: Integer;
property Deleted: Boolean;
property Undone: Boolean;
end;
TXLSXScenarioInputCells = class
function Add(const ARef, AValue: WideString): TXLSXScenarioInputCell;
procedure Delete(Index: Integer);
procedure Clear;
property Count: Integer;
property Items[Index: Integer]: TXLSXScenarioInputCell; default;
end;
TXLSXScenario = class
property Name: WideString;
property Locked: Boolean;
property Hidden: Boolean;
property User: WideString;
property Comment: WideString;
property InputCells: TXLSXScenarioInputCells;
end;
TXLSXScenarios = class
function Add(const AName: WideString): TXLSXScenario;
function FindByName(const AName: WideString): TXLSXScenario;
procedure Delete(Index: Integer);
procedure Clear;
property Count: Integer;
property Items[Index: Integer]: TXLSXScenario; default;
property CurrentIndex: Integer;
property ShownIndex: Integer;
property SqRef: WideString;
end;
TXLSXWorksheet = class
constructor Create(const AName: WideString);
destructor Destroy; override;
procedure SetWorkbook(AWorkbook: TXLSXWorkbook);
function MergeCells(ARow1, ACol1, ARow2, ACol2: Integer): Integer;
function FillMergedCellValues: Integer;
property FormControls: TXLSXFormControls;
function AddHyperlink(ARow, ACol: Integer; const AUrl: WideString): Integer; overload;
function AddHyperlink(ARow, ACol: Integer; const AUrl, ADisplay: WideString): Integer; overload;
function AddHyperlink(ARow, ACol: Integer; const AUrl, ADisplay, ATooltip: WideString): Integer; overload;
function AddComment(ARow, ACol: Integer; const AText: WideString): Integer; overload;
function AddComment(ARow, ACol: Integer; const AText, AAuthor: WideString): Integer; overload;
function AddImage(ARow, ACol: Integer; const AData: AnsiString; AFormat: TXLSXImageFormat): Integer;
function AddImageFromFile(ARow, ACol: Integer; const AFileName: WideString): Integer;
function AddConditionalFormat(const ARange: WideString; AOp: TXLSXCfOperator; const AFormula1: WideString): Integer; overload;
function AddConditionalFormat(const ARange: WideString; AOp: TXLSXCfOperator; const AFormula1, AFormula2: WideString): Integer; overload;
// Excel 2007+ extension rules (v2.36.0+) — mirror the BIFF8 TXLSWorksheet API.
// Their colors are BGR ($00BBGGRR, like a VCL TColor), not the ARGB used by fonts and fills
function AddCondFormatDataBar(const ARange: WideString; AColor: LongWord;
AMinKind: TXLSCfValueKind = cfvMinOfRange; const AMinValue: WideString = '';
AMaxKind: TXLSCfValueKind = cfvMaxOfRange; const AMaxValue: WideString = ''): Integer;
function AddCondFormatColorScale2(const ARange: WideString;
AMinColor, AMaxColor: LongWord;
AMinKind: TXLSCfValueKind = cfvMinOfRange; const AMinValue: WideString = '';
AMaxKind: TXLSCfValueKind = cfvMaxOfRange; const AMaxValue: WideString = ''): Integer;
function AddCondFormatColorScale3(const ARange: WideString;
AMinColor, AMidColor, AMaxColor: LongWord;
AMinKind: TXLSCfValueKind = cfvMinOfRange; const AMinValue: WideString = '';
AMidKind: TXLSCfValueKind = cfvPercentile; const AMidValue: WideString = '50';
AMaxKind: TXLSCfValueKind = cfvMaxOfRange; const AMaxValue: WideString = ''): Integer;
function AddCondFormatIconSet(const ARange: WideString;
ASetType: TXLSIconSetType): Integer;
function AddCondFormatExpression(const ARange: WideString;
const AFormula: WideString): Integer;
function AddCondFormatContainsText(const ARange, AText: WideString): Integer;
function AddCondFormatNotContainsText(const ARange, AText: WideString): Integer;
function AddCondFormatBeginsWith(const ARange, AText: WideString): Integer;
function AddCondFormatEndsWith(const ARange, AText: WideString): Integer;
function AddCondFormatTop10(const ARange: WideString; ARank: Integer;
ABottom: Boolean = False; APercent: Boolean = False): Integer;
function AddCondFormatAboveAverage(const ARange: WideString;
AAbove: Boolean = True): Integer;
function AddCondFormatDuplicateValues(const ARange: WideString): Integer;
function AddCondFormatUniqueValues(const ARange: WideString): Integer;
function AddCondFormatContainsBlanks(const ARange: WideString): Integer;
function AddCondFormatNotContainsBlanks(const ARange: WideString): Integer;
function AddCondFormatContainsErrors(const ARange: WideString): Integer;
function AddCondFormatNotContainsErrors(const ARange: WideString): Integer;
function AddDataValidation(const ARange: WideString; AType: TXLSXDataValidationType; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddDataValidation(const ARange: WideString; AType: TXLSXDataValidationType; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddListValidation(const ARange, AItems: WideString): Integer;
function AddWholeNumberValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddWholeNumberValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddDecimalValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddDecimalValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddDateValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddDateValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddTimeValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddTimeValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddTextLengthValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1: WideString): Integer; overload;
function AddTextLengthValidation(const ARange: WideString; AOp: TXLSXDvOperator; const AFormula1, AFormula2: WideString): Integer; overload;
function AddCustomValidation(const ARange, AFormula: WideString): Integer;
function CheckDataValidation(ARow, ACol: Integer; const AValue: Variant;
SetIfValid: Boolean = False): Integer;
// Excel-style table (insert table) — see TXLSXTable.
function AddTable(const AName, ARange: WideString; AColumns: TStrings): Integer;
// Chart helpers — anchored or full-page (via AddChartSheet on workbook).
function AddChart(AChartType: TXLSXChartType; const ATitle: WideString;
AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
// Standalone drawing text boxes.
function AddTextBox(const AText: WideString;
AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXTextBox;
function TextBoxCount: Integer;
function TextBox(Index: Integer): TXLSXTextBox;
function IndexOfTextBoxAt(ARow, ACol: Integer): Integer;
function FindTextBoxAt(ARow, ACol: Integer): TXLSXTextBox;
procedure DeleteTextBox(Index: Integer);
function DeleteTextBoxAt(ARow, ACol: Integer): Boolean;
function DeleteTextBoxesInRange(ARow1, ACol1, ARow2, ACol2: Integer): Integer;
procedure ClearTextBoxes;
// Internal Sheet!Cell hyperlink (no rels relationship needed).
function AddHyperlinkToCell(ARow, ACol: Integer; const ALocation: WideString): Integer; overload;
function AddHyperlinkToCell(ARow, ACol: Integer; const ALocation, ADisplay: WideString): Integer; overload;
function AddHyperlinkToCell(ARow, ACol: Integer; const ALocation, ADisplay, ATooltip: WideString): Integer; overload;
// Sheet visibility and selection state.
property Visibility: TXLSXSheetVisibility;
property Visible: Boolean;
property IsSelected: Boolean;
procedure SetIsSelected(Value: Boolean);
// Auto-fit column width / row height from cell content.
procedure AutoFitColumn(ACol: Integer; AMinWidth: Double = 0; AMaxWidth: Double = 0);
procedure AutoFitColumns(AColMin, AColMax: Integer; AMinWidth: Double = 0; AMaxWidth: Double = 0);
procedure AutoFitRow(ARow: Integer; AMinHeight: Double = 0; AMaxHeight: Double = 0);
procedure AutoFitRows(ARowMin, ARowMax: Integer; AMinHeight: Double = 0; AMaxHeight: Double = 0);
// Row / column insert and delete with cascade shift.
procedure InsertRows(BeforeRow, Count: Integer);
procedure DeleteRows(StartRow, Count: Integer);
procedure InsertCols(BeforeCol, Count: Integer);
procedure DeleteCols(StartCol, Count: Integer);
// Manual page breaks.
procedure AddRowBreak(BeforeRow: Integer);
procedure AddColBreak(BeforeCol: Integer);
function HasRowBreak(BeforeRow: Integer): Boolean;
function HasColBreak(BeforeCol: Integer): Boolean;
function IndexOfRowBreak(BeforeRow: Integer): Integer;
function IndexOfColBreak(BeforeCol: Integer): Integer;
procedure RemoveRowBreak(BeforeRow: Integer);
procedure RemoveColBreak(BeforeCol: Integer);
function RemoveRowBreaksInRange(FirstRow, LastRow: Integer): Integer;
function RemoveColBreaksInRange(FirstCol, LastCol: Integer): Integer;
procedure ClearRowBreaks;
procedure ClearColBreaks;
procedure ClearAllPageBreaks;
function RowBreakCount: Integer;
function ColBreakCount: Integer;
function RowBreaks(Index: Integer): Integer;
function ColBreaks(Index: Integer): Integer;
function KeepRowLinkLevel(AfterRow: Integer): Integer;
function KeepColLinkLevel(AfterCol: Integer): Integer;
function Calculate(const Formula: WideString): Variant;
function ForEachCell(Callback: TXLSXCellReadEvent): Integer;
function ForEachFormattedCell(Callback: TXLSXCellTextEvent): Integer;
function ForEachRow(Callback: TXLSXRowReadEvent): Integer;
function FindText(const SearchText: WideString; out Row, Col: Integer): Boolean; overload;
function FindText(const SearchText: WideString; out Row, Col: Integer; MatchCase: Boolean): Boolean; overload;
function ReplaceText(const SearchText, ReplacementText: WideString): Integer; overload;
function ReplaceText(const SearchText, ReplacementText: WideString; MatchCase: Boolean): Integer; overload;
function FindText(const SearchText: WideString; out Row, Col: Integer; Options: TXLSXFindOptions; StartRow, StartCol: Integer): Boolean; overload;
function FindTextIn(const SearchText: WideString; out Row, Col: Integer; Options: TXLSXFindOptions; FirstRow, FirstCol, LastRow, LastCol, StartRow, StartCol: Integer): Boolean;
function ReplaceText(const SearchText, ReplacementText: WideString; Options: TXLSXFindOptions): Integer; overload;
function ReplaceText(const SearchText, ReplacementText: WideString; Options: TXLSXFindOptions; Callback: TXLSXReplaceEvent): Integer; overload;
function ReplaceTextIn(const SearchText, ReplacementText: WideString; Options: TXLSXFindOptions; FirstRow, FirstCol, LastRow, LastCol: Integer; Callback: TXLSXReplaceEvent): Integer;
function WriteCells(const ARange: WideString; Callback: TXLSXCellWriteEvent): Integer; overload;
function WriteCells(ARow1, ACol1, ARow2, ACol2: Integer; Callback: TXLSXCellWriteEvent): Integer; overload;
function WriteRows(const ARange: WideString; Callback: TXLSXRowWriteEvent): Integer; overload;
function WriteRows(ARow1, ACol1, ARow2, ACol2: Integer; Callback: TXLSXRowWriteEvent): Integer; overload;
function WriteFloatRowValues(ARow, ACol: Integer; const AValues: array of Double): Integer;
function WriteStringRowValues(ARow, ACol: Integer; const AValues: array of WideString): Integer;
function WriteRowValues(ARow, ACol: Integer; const AValues: array of Variant): Integer;
function WriteFloatColumnValues(ARow, ACol: Integer; const AValues: array of Double): Integer;
function WriteStringColumnValues(ARow, ACol: Integer; const AValues: array of WideString): Integer;
function WriteColumnValues(ARow, ACol: Integer; const AValues: array of Variant): Integer;
// Column / row metadata.
procedure SetColWidth(ACol: Integer; AWidth: Double);
function HasColWidth(ACol: Integer): Boolean;
procedure ClearColWidths;
procedure SetRowHeight(ARow: Integer; AHeight: Double);
function HasRowHeight(ARow: Integer): Boolean;
procedure ClearRowHeights;
procedure SetRowOutlineLevel(ARow, ALevel: Integer);
function HasRowOutlineLevel(ARow: Integer): Boolean;
procedure ClearRowOutlineLevels;
procedure SetColOutlineLevel(ACol, ALevel: Integer);
function HasColOutlineLevel(ACol: Integer): Boolean;
procedure ClearColOutlineLevels;
procedure SetRowHidden(ARow: Integer; AHidden: Boolean);
procedure SetColHidden(ACol: Integer; AHidden: Boolean);
procedure ClearRowHidden;
procedure ClearColHidden;
procedure SetRowCollapsed(ARow: Integer; ACollapsed: Boolean);
procedure SetColCollapsed(ACol: Integer; ACollapsed: Boolean);
procedure ClearRowCollapsed;
procedure ClearColCollapsed;
function TryGetOutlineNode(AAxis: TXLSOutlineAxis; ANodeIndex: Integer; out ANode: TXLSOutlineNode): Boolean;
function SetOutlineNodeCollapsed(AAxis: TXLSOutlineAxis; ANodeIndex: Integer; ACollapsed: Boolean; AChildMode: TXLSOutlineChildMode = xocPreserve): Boolean;
procedure SetOutlineDisplayLevel(AAxis: TXLSOutlineAxis; ADisplayLevel: Integer; AChildMode: TXLSOutlineChildMode = xocPreserve);
// Range copy / move / clear API.
procedure ClearRangeValues(const ARange: WideString); overload;
procedure ClearRangeValues(ARow1, ACol1, ARow2, ACol2: Integer); overload;
procedure ClearRange(ARow1, ACol1, ARow2, ACol2: Integer);
procedure CopyRange(ASrcRow1, ASrcCol1, ASrcRow2, ASrcCol2, ADstRow, ADstCol: Integer);
procedure CopyRangeTo(ASrcRow1, ASrcCol1, ASrcRow2, ASrcCol2: Integer;
ATargetSheet: TXLSXWorksheet; ADstRow, ADstCol: Integer);
procedure CopyFrom(ASource: TXLSXWorksheet);
procedure MoveRange(ASrcRow1, ASrcCol1, ASrcRow2, ASrcCol2, ADstRow, ADstCol: Integer);
procedure SortRange(ARow1, ACol1, ARow2, ACol2: Integer;
const AKeyCols: array of Integer; const ADescending: array of Boolean);
function GetCellVisibleFormat(ARow, ACol: Integer): TXLSXCellStyleState;
function Subtotal(ARow1, ACol1, ARow2, ACol2, AChangeColumn,
AFunction: Integer; const ASubtotalColumns: array of Integer): Integer; overload;
function Subtotal(ARow1, ACol1, ARow2, ACol2, AChangeColumn,
AFunction: Integer; const ASubtotalColumns: array of Integer;
const AGrandTotalText: WideString): Integer; overload;
function SubtotalDefaultEnglishString(AFunction: Integer): WideString;
// Frozen panes (top rows / left columns).
procedure FreezePanes(ARow, ACol: Integer);
procedure UnfreezePane;
property FreezeCol, FreezeRow: Integer;
// Page setup.
procedure SetPageMargins(ALeft, ARight, ATop, ABottom: Double); overload;
procedure SetPageMargins(ALeft, ARight, ATop, ABottom, AHeader, AFooter: Double); overload;
property MarginLeft, MarginRight, MarginTop, MarginBottom,
MarginHeader, MarginFooter: Double;
property MarginLeftCM, MarginRightCM, MarginTopCM, MarginBottomCM,
MarginHeaderCM, MarginFooterCM: Double;
property PageLandscape: Boolean;
property PaperSize, PageScale, FitToWidth, FitToHeight: Integer;
property HeaderText, FooterText: WideString;
property LeftHeader, CenterHeader, RightHeader: WideString;
property LeftFooter, CenterFooter, RightFooter: WideString;
property CenterHorizontally, CenterVertically: Boolean;
property PrintGridlines: Boolean;
property PrintHeadings: Boolean;
property BlackAndWhite: Boolean;
property Draft: Boolean;
property PrintNotes: Boolean;
property PrintOverThenDown: Boolean;
property PrintArea: WideString;
property PrintTitleRows: WideString;
property PrintTitleCols: WideString;
// Auto-filter range (e.g. "A1:C100"). Empty = no filter.
procedure SetAutoFilter(ARow1, ACol1, ARow2, ACol2: Integer); overload;
procedure SetAutoFilter(const ARange: WideString); overload;
procedure ClearAutoFilter;
property AutoFilterRange: WideString;
property AutoFilterColumns: TXLSXAutoFilterColumns;
function AddAutoFilterColumn(AColId: Integer; AOp1: TXLSXAutoFilterOp; const ACriteria1: WideString): TXLSXAutoFilterColumn; overload;
function AddAutoFilterColumn(AColId: Integer; AOp1: TXLSXAutoFilterOp; const ACriteria1: WideString; AOp2: TXLSXAutoFilterOp; const ACriteria2: WideString; AAndConnector: Boolean): TXLSXAutoFilterColumn; overload;
procedure ClearAutoFilterColumns;
function AutoFilterRowVisible(ARow: Integer): Boolean;
function PreviewAutoFilterRows(Callback: TXLSXAutoFilterRowEvent): Integer;
function ApplyAutoFilter(const ARange: WideString): Boolean;
// Sheet protection (16-bit legacy hash).
procedure Protect; overload;
procedure Protect(const APassword: WideString); overload;
procedure UnProtect;
property IsProtected: Boolean;
property AllowOption[Option: TXLSXSheetProtectionOption]: Boolean;
property SheetProtectionOptions: TXLSXSheetProtectionOptions;
property PageSetupTouched: Boolean;
property SheetProtectHash: WideString;
// Sheet tab color + chart-sheet flag.
property TabColor: LongWord;
property TabColorIsAuto: Boolean;
property IsChartSheet: Boolean;
property Name: WideString;
property Workbook: TXLSXWorkbook;
property AlignWithMargins: Boolean;
property CodeName: WideString;
property ConsolidateXml: WideString;
property DifferentFirst: Boolean;
property DifferentOddEven: Boolean;
property EvenFooterText: WideString;
property EvenHeaderText: WideString;
property FirstFooterText: WideString;
property FirstHeaderText: WideString;
property FirstPageNumber: Integer;
property GridColor: LongWord;
property HorizontalDpi: Integer;
property OutlineLevelCol: Integer;
property OutlineLevelRow: Integer;
property PaneState: WideString;
property PhoneticAlignment: WideString;
property PhoneticFontId: Integer;
property PhoneticType: WideString;
property PrintErrors: Integer;
property ScaleWithDoc: Boolean;
property ScenariosXml: WideString;
property SheetProtectAlgorithmName: WideString;
property SheetProtectHashValue: WideString;
property SheetProtectSaltValue: WideString;
property SheetProtectSpinCount: Integer;
property ShowFormulas: Boolean;
property ShowOutlineSymbols: Boolean;
property SortState: TXLSXSortState;
property SortStateXml: WideString;
property SummaryBelow: Boolean;
property SummaryRight: Boolean;
property UseFirstPageNumber: Boolean;
property UsePrinterDefaults: Boolean;
property VerticalDpi: Integer;
property ZeroHeight: Boolean;
property ZoomNormal: Integer;
property ZoomPageLayout: Integer;
property ZoomSheetLayout: Integer;
// Sheet view display options.
property View: TXLSXWindowView;
property Zoom: Integer;
property DisplayGridLines: Boolean;
property DisplayZeros: Boolean;
property DisplayRightToLeft: Boolean;
property StandardWidth: Double;
property StandardHeight: Double;
// Collections owned by the worksheet.
property Cells: TXLSXCells;
property MergedCells: TXLSXMergedCells;
property Hyperlinks: TXLSXHyperlinks;
property Comments: TXLSXComments;
property Images: TXLSXImages;
property ConditionalFormats: TXLSXConditionalFormats;
property DataValidations: TXLSXDataValidations;
property IgnoredErrors: TXLSXIgnoredErrors;
property Scenarios: TXLSXScenarios;
property Tables: TXLSXTables;
property Charts: TXLSXCharts;
property PivotTables: TXLSPivotTables;
function AddPivotTable(const SourceRangeA1: WideString; DestRow, DestCol: Integer; const Name: WideString): TXLSPivotTable;
function AddPivotTableCopy(SourcePivot: TXLSPivotTable; DestRow, DestCol: Integer; const NewName: WideString): TXLSPivotTable;
function PivotSetDataFieldFormat(DataField: TXLSPivotDataField; const FormatStr: WideString): Word;
property ColWidth[ACol: Integer]: Double;
property RowHeight[ARow: Integer]: Double;
property RowOutlineLevel[ARow: Integer]: Integer;
property ColOutlineLevel[ACol: Integer]: Integer;
property RowHidden[ARow: Integer]: Boolean;
property ColHidden[ACol: Integer]: Boolean;
property RowCollapsed[ARow: Integer]: Boolean;
property ColCollapsed[ACol: Integer]: Boolean;
property Range[const Ref: WideString]: TXLSXRange;
property RCRange[R1, C1, R2, C2: Integer]: TXLSXRange;
property UsedRange: TXLSXRange;
function EntireRow(ARow: Integer): TXLSXRange;
function EntireColumn(ACol: Integer): TXLSXRange;
property ProtectedRanges: TXLSXProtectedRanges;
property RawWorksheetExts: TXLSXRawWorksheetExts;
property SparklineGroups: TXLSXSparklineGroups;
property ThreadedComments: TXLSXThreadedComments;
function AddAreaChart(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
function AddBarChart(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
function AddChartFromRange(const ARange: WideString; AChartType: TXLSXChartType): TXLSXChart;
function AddColumnChart(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
function AddLineChart(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
function AddPieChart(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart;
function AddSparklineGroup(const ARange, ALocation: WideString; AType: TXLSXSparklineType): TXLSXSparklineGroup;
function AddThreadedComment(ARow, ACol: Integer; const AText, AAuthor: WideString): TXLSXThreadedComment;
function AddThreadedReply(AParentComment: TXLSXThreadedComment; const AText, AAuthor: WideString): TXLSXThreadedComment;
function GetSheetProtectOption(Option: TXLSXSheetProtectionOption): Boolean;
procedure SetSheetProtectOption(Option: TXLSXSheetProtectionOption; Value: Boolean);
procedure PasteFromClipboard(StartRow, StartCol: Integer);
function AddWordArt(const AText, APreset: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXTextBox;
procedure BuildRowMajorCellOrder;
procedure ClearRawDrawingAnchors;
function CreateConditionalFormatEvaluator: TXLSXConditionalFormatEvaluator;
function RawDrawingAnchor(Index: Integer): WideString;
function RawDrawingAnchorCount: Integer;
function AddRawDrawingAnchor(const AXml: WideString): TXLSXDrawingObject;
procedure BringToFront(AObject: TXLSXDrawingObject);
procedure SendToBack(AObject: TXLSXDrawingObject);
procedure BringForward(AObject: TXLSXDrawingObject);
procedure SendBackward(AObject: TXLSXDrawingObject);
function SaveAsPDF(const FileName: WideString): Integer; overload;
function SaveAsPDF(Stream: TStream): Integer; overload;
procedure ToggleColGrouped(ACol: Integer);
procedure ToggleRowGrouped(ARow: Integer);
end;
TXLSXBuiltinCellStyle = (
xbsNormal, xbsGood, xbsBad, xbsNeutral,
xbsCalculation, xbsCheckCell, xbsExplanatoryText, xbsInput,
xbsLinkedCell, xbsNote, xbsOutput, xbsWarningText,
xbsHeading1, xbsHeading2, xbsHeading3, xbsHeading4, xbsTitle, xbsTotal,
xbsAccent1, xbsAccent2, xbsAccent3, xbsAccent4, xbsAccent5, xbsAccent6);
TXLSXRange = class
function RefA1: WideString;
function SaveAsHTML(const FileName: WideString): Integer; overload;
function SaveAsHTML(const FileName: WideString; Options: TXLSXHtmlExportOptions): Integer; overload;
function SaveAsHTML(Stream: TStream): Integer; overload;
function SaveAsHTML(Stream: TStream; Options: TXLSXHtmlExportOptions): Integer; overload;
procedure SetValue(const V: Variant);
procedure SetFormula(const F: WideString);
procedure ClearValues;
procedure Clear;
procedure ClearAll;
procedure SetFontIndex(AIdx: Integer);
procedure SetFillIndex(AIdx: Integer);
procedure SetBorderIndex(AIdx: Integer);
procedure SetNumberFormatIndex(AIdx: Integer);
procedure SetAlignmentIndex(AIdx: Integer);
procedure SetNumberFormat(const Fmt: WideString);
procedure SetBorders(Kind: TXLSXBorderEdgeKind; Style: TXLSXBorderStyle); overload;
procedure SetBorders(Kind: TXLSXBorderEdgeKind; Style: TXLSXBorderStyle; Color: LongWord); overload;
procedure SetLocked(ALocked: Boolean);
procedure SetFormulaHidden(AHidden: Boolean);
procedure AutoFitColumns(AMinWidth: Double = 0; AMaxWidth: Double = 0);
procedure AutoFitRows(AMinHeight: Double = 0; AMaxHeight: Double = 0);
procedure Merge; overload;
procedure Merge(Across: OleVariant); overload;
procedure Unmerge;
function Offset(DRow, DCol: Integer): TXLSXRange;
function Resize(NewRowCount, NewColCount: Integer): TXLSXRange;
procedure Sort(AKeyColumn: Integer; ADescending: Boolean = False); overload;
procedure Sort(const AKeyColumns: array of Integer; const ADescending: array of Boolean); overload;
procedure ApplyBuiltinStyle(AStyle: TXLSXBuiltinCellStyle);
procedure CopyTo(ADestRow, ADestCol: Integer);
procedure MoveTo(ADestRow, ADestCol: Integer);
procedure InsertRows;
procedure DeleteRows;
procedure InsertCols;
procedure DeleteCols;
end;
| Name | Nome da guia da planilha como exibido no Excel |
| SetWorkbook / Workbook | Define e expõe a referência reversa à pasta de trabalho usada por auxiliares de célula e compartilhados da pasta de trabalho, como formatos numéricos compartilhados, preenchimentos, bordas e consultas de shared strings |
| Cells | Coleção de células. Use Cells.Item[Row, Col].Value
Veja TXLSXCells / TXLSXCell |
| Calculate | Compila e avalia uma string de fórmula do Excel no contexto desta planilha Um = inicial é aceito, e referências locais da planilha, células de fórmula referenciadas, referências entre planilhas, intervalos de nomes definidos e funções suportadas de texto, data, dia útil, engenharia/conversão de base, bitwise, estatísticas, agregação e matemática são resolvidas pelo avaliador de fórmulas compartilhado da pasta de trabalho |
| GetCellVisibleFormat / Subtotal / SubtotalDefaultEnglishString / CheckDataValidation | GetCellVisibleFormat resolve o estilo efetivo em uma coordenada sem criar uma célula vazia. Subtotal agrupa um retângulo ordenado pelas mudanças em uma coluna absoluta da planilha, aceita números de função SUBTOTAL do Excel de 1 a 11 ou de 101 a 111, insere linhas de fórmula e de contorno e retorna a quantidade de linhas inseridas. SubtotalDefaultEnglishString mapeia um número de função SUBTOTAL para o nome em inglês (por exemplo, 1 para Average e 9 para Total). CheckDataValidation retorna -1 para um candidato válido ou a primeira regra que falha (base 1) e só confirma quando SetIfValid é true e todas as regras aplicáveis passam |
| ForEachCell / ForEachFormattedCell / ForEachRow / FindText / ReplaceText / WriteCells / WriteRows | Auxiliares para varredura de células e linhas carregadas, busca de texto, substituição de texto e preenchimento de intervalos. ForEachCell percorre as células existentes em ordem de linha com valor e texto da fórmula. ForEachFormattedCell percorre as células populadas em ordem de linha/coluna entregando o texto de exibição de cada célula com o formato numérico aplicado e retorna a quantidade visitada, respeitando o cancelamento do callback. ForEachRow percorre as linhas existentes em ordem e informa a primeira e a última coluna carregada de cada linha. FindText e ReplaceText varrem as células de texto carregadas em ordem de linha, ignoram fórmulas e valores não textuais e podem diferenciar maiúsculas; overloads de opções adicionam semântica da caixa de diálogo Localizar do Excel (wildcards, correspondência de célula inteira, diferenciação de maiúsculas, busca no texto da fórmula, varredura reversa, varredura coluna a coluna) e FindTextIn / ReplaceTextIn restringem a varredura a uma janela retangular com callback opcional de substituição por ocorrência. WriteCells solicita valores para um intervalo numérico ou no estilo A1 e suporta skip por célula e cancelamento. WriteRows solicita um array de Variant para cada linha e suporta skip de linha inteira e cancelamento |
| MergedCells | Coleção de intervalos mesclados. Veja TXLSXMergedCells |
| Hyperlinks | Coleção de hyperlinks. Veja TXLSXHyperlinks |
| Comments | Coleção de comentários de célula. Veja TXLSXComments |
| Tables / AddTable | Faixa de tabela no estilo Excel na planilha. Veja TXLSXTable / TXLSXTables |
| Charts / AddChart | Coleção de gráficos ancorados. Veja
TXLSXChart / TXLSXCharts
O enum de tipo de gráfico suporta gráficos de coluna, barra, linha, pizza, área, rosca, dispersão, bolhas e radar Para um gráfico de página inteira, use
Workbook.AddChartSheet(...) |
| AddTextBox / TextBoxCount / TextBox / FindTextBoxAt | Cria, enumera, localiza, exclui e limpa caixas de texto de desenho independentes ancoradas a retângulos de células
IndexOfTextBoxAt e FindTextBoxAt localizam a primeira caixa de texto que contém uma célula, enquanto
DeleteTextBoxAt, DeleteTextBoxesInRange,
DeleteTextBoxe ClearTextBoxes removem caixas de texto individuais ou agrupadas sem tocar nos comentários de célula |
| AddHyperlinkToCell overloads | Hyperlink de âncora interna — salta para uma localização
Sheet!Cell em outro lugar da pasta de trabalho. Nenhum relationship de rels é gerado. Veja
TXLSXHyperlink.Location |
| RowOutlineLevel / ColOutlineLevel | Nível de aninhamento de grupo (0..7) para a linha ou coluna correspondente. O SaveAs emite outlineLevel="N" na entrada de linha/coluna |
| RowHidden / ColHidden | Boolean — remove a linha ou coluna da visualização (hidden="1") |
| RowCollapsed / ColCollapsed | Boolean — marca uma linha/coluna cujo pai de agrupamento está recolhido (collapsed="1") |
| FreezePanes(Row, Col) / UnfreezePane | Define uma divisão congelada — as Row
linhas do topo e as Col colunas da esquerda permanecem visíveis enquanto o restante rola. FreezeCol e
FreezeRow são propriedades somente leitura que expõem a divisão atual |
| SetPageMargins / Page setup properties | Todas as seis margens mais PageLandscape,
PaperSize, PageScale,
FitToWidth, FitToHeight,
HeaderText, FooterText,
LeftHeader, CenterHeader,
RightHeader, LeftFooter,
CenterFooter, RightFooter,
CenterHorizontallye CenterVertically. Definir qualquer uma dispara os blocos correspondentes <pageMargins>,
<pageSetup>e <headerFooter>
no SaveAs. Use as constantes nomeadas xlsxPaper* como xlsxPaperLetter, xlsxPaperA4,
xlsxPaperA3e xlsxPaperLegal em vez dos códigos brutos de tamanho de papel do Excel, quando possível |
| Visibility | Visibilidade da planilha: xlsxSheetVisible
(padrão), xlsxSheetHidden (oculta, mas reversível na UI do Excel) ou xlsxSheetVeryHidden (exige VBA ou código para reexibir). O SaveAs emite um atributo state no elemento
<sheet> de xl/workbook.xmlVisible é um alias Boolean de conveniência para operações comuns de mostrar/ocultar |
| SetIsSelected / IsSelected | Quando True, a guia da planilha aparece selecionada (destacada). Várias planilhas podem estar selecionadas ao mesmo tempo. O SaveAs emite tabSelected="1" no <sheetView> |
| AutoFitColumn / AutoFitColumns | AutoFitColumn(Col, MinWidth, MaxWidth) mede todas as células da coluna e define ColWidth[Col] para o conteúdo mais largo (ASCII = 1 caractere, CJK = 2 caracteres, escala Calibri 11pt), depois aplica os limites opcionais de largura mínima e máxima
AutoFitColumns(Min, Max, MinWidth, MaxWidth) itera pelo intervalo de colunas, limitado à última coluna com células |
| AutoFitRow / AutoFitRows | AutoFitRow(Row, MinHeight, MaxHeight) define
RowHeight[Row] para o conteúdo de célula mais alto da linha (em pontos), depois aplica os limites opcionais de altura mínima e máxima
AutoFitRows(Min, Max, MinHeight, MaxHeight) itera pelo intervalo de linhas, limitado à última linha com células |
| InsertRows / DeleteRows | InsertRows(BeforeRow, Count) desloca todas as linhas a partir de BeforeRow para baixo em
Count. DeleteRows(StartRow, Count) remove as linhas [StartRow, StartRow+Count-1] e puxa as demais para cima. Ambas se propagam por células, intervalos mesclados, alturas de linha, níveis de contorno, flags de ocultação, hyperlinks, comentários, painéis congelados e referências de AutoFiltro / formatação condicional / validação de dados, tabelas, fórmulas de células, fórmulas de formatação condicional / validação de dados, destinos de hyperlinks internos, referências de configuração de impressão, quebras de página manuais, critérios de coluna do AutoFiltro, intervalos de séries de gráficos e nomes definidos que apontam para a planilha editada, âncoras de imagens e âncoras de gráficos |
| InsertCols / DeleteCols | O mesmo que InsertRows / DeleteRows , mas operando sobre colunas. Larguras de coluna, níveis de contorno e flags de ocultação também são atualizados |
| AddRowBreak / AddColBreak | AddRowBreak(N) insere uma quebra de página manual antes da linha N (ou seja, a linha N inicia uma nova página impressa). AddColBreak(N) quebra antes da coluna
N. O SaveAs grava <rowBreaks> /
<colBreaks> no XML da planilha |
| HasRowBreak / HasColBreak / IndexOfRowBreak / IndexOfColBreak | Consulta ou localiza uma quebra manual única pelo seu índice "before" |
| RemoveRowBreak / RemoveColBreak / RemoveRowBreaksInRange / RemoveColBreaksInRange | Remove uma quebra manual ou todas as quebras em um intervalo inclusivo de linhas/colunas; os auxiliares de intervalo aceitam coordenadas invertidas e retornam a quantidade de quebras removidas |
| ClearRowBreaks / ClearColBreaks / ClearAllPageBreaks | Remove todas as quebras de linha, todas as quebras de coluna ou ambas |
| RowBreakCount / ColBreakCount / RowBreaks[i] / ColBreaks[i] | Itera pelos índices de quebra armazenados (valores "Before" com base 1) |
| KeepRowLinkLevel / KeepColLinkLevel | Retorna o nível keep-together mais forte que vincula a linha (ou coluna) após o índice dado ao bloco de cima (ou à esquerda), ou 0 quando a posição não está dentro de um bloco keep-together |
| PrintGridlines / PrintHeadings | Quando True, o SaveAs emite
printGridLines="1" /
printRowColHeadings="1" dentro de
<printOptions> para que as linhas de grade ou os cabeçalhos de linha/coluna apareçam na página impressa |
| BlackAndWhite / Draft / PrintNotes / PrintOverThenDown | Opções de impressão em <pageSetup>:
BlackAndWhite renderiza em preto e branco;
Draft suprime gráficos para um preview mais rápido;
PrintNotes imprime comentários de célula como exibidos;
PrintOverThenDown muda a ordem das páginas para primeiro da esquerda para a direita em vez de primeiro de cima para baixo |
| PrintArea | A região retangular que o Excel imprime (por exemplo,
"$A$1:$D$10"). Gravada como
<definedName name="_xlnm.Print_Area"> no nível da pasta de trabalho com escopo nesta planilha. String vazia = não definida |
| PrintTitleRows / PrintTitleCols | Intervalos de linhas ou colunas que se repetem em cada página impressa (por exemplo, "$1:$3" ou "$A:$B"). Gravados como
<definedName name="_xlnm.Print_Titles"> |
| SetAutoFilter / AutoFilterRange | Define o intervalo do filtro (por exemplo,
"A1:C100"); o SaveAs grava
<autoFilter ref="..."/> |
| AutoFilterColumns / AddAutoFilterColumn / ClearAutoFilterColumns | Critérios de filtro por coluna anexados ao intervalo do AutoFiltro. AddAutoFilterColumn(ColId, Op, Criteria) adiciona um filtro de critério único; o overload de dois critérios adiciona um par AND/OR
AutoFilterColumns.FindByColId(ColId) retorna um objeto de critérios existente, e AutoFilterColumns.DeleteByColId(ColId)
remove um sem varrer Items manualmente, e
AutoFilterColumns.ClearCriteria limpa todos os critérios de coluna preservando o intervalo do filtro
ColId é o deslocamento com base 0 dentro do intervalo do AutoFiltro (não a coluna da planilha). O SaveAs grava filhos <filterColumn>
dentro de <autoFilter> |
| AutoFilterRowVisible / PreviewAutoFilterRows / ApplyAutoFilter | AutoFilterRowVisible(Row) avalia os critérios de AutoFiltro XLSX armazenados para uma linha de dados. PreviewAutoFilterRows percorre as linhas de dados em AutoFilterRange, informa o estado de visibilidade de cada linha por meio de um callback, retorna a quantidade de linhas visíveis visitadas e não altera as flags de ocultação. ApplyAutoFilter aplica os critérios do AutoFiltro, oculta as linhas que não correspondem e retorna se teve sucesso |
| Protect / UnProtect / IsProtected | Chave de proteção no nível da planilha com hash opcional de senha legado de 16 bits. Refletida como
<sheetProtection> |
| AllowOption / SheetProtectionOptions | 15 opções refinadas de permissão de proteção (como formatar células, inserir linhas/colunas, classificar, AutoFiltro, selecionar células bloqueadas/desbloqueadas etc.), correspondentes à lista de permissões "Proteger Planilha" do Excel |
| PageSetupTouched / SheetProtectHash | Use PageSetupTouched para verificar se os valores de configuração de página foram modificados explicitamente, e
SheetProtectHash para ler/gravar o texto do hash legado de 16 bits de proteção de planilha usado pelos formatos de arquivo XLS legados |
| AddPivotTable / AddPivotTableCopy / PivotSetDataFieldFormat | Métodos para criar, copiar e formatar tabelas dinâmicas. AddPivotTable constrói uma tabela dinâmica a partir de um intervalo de origem A1 como 'Data!A1:C9'e a ancora na célula de base 1 DestRow, DestCol; retorna nil para uma origem malformada ou uma âncora fora da planilha. AddPivotTableCopy copia profundamente uma tabela dinâmica existente, desta pasta de trabalho ou de outra, para uma nova âncora de base 1 nesta planilha (um NewNamevazio produz '<source> (2)'). PivotSetDataFieldFormat registra um formato numérico para um campo de dados e retorna o índice de formato numérico dele |
| PivotTables | Coleção de tabelas dinâmicas definidas nesta planilha |
| MarginLeftCM / MarginRightCM / MarginTopCM / MarginBottomCM / MarginHeaderCM / MarginFooterCM | Margens de configuração de página representadas em centímetros |
| TabColor / TabColorIsAuto | Cor ARGB para a guia da planilha no Excel;
atribuir TabColor define TabColorIsAuto como False
TabColorIsAuto = True (padrão) suprime o filho
<tabColor> de <sheetPr> |
| IsChartSheet | Quando True, o SaveAs grava a planilha em
xl/chartsheets/sheetN.xml em vez de
xl/worksheets/sheetN.xml e hospeda
Charts[0] em página inteira. Use o auxiliar
Workbook.AddChartSheet(...) para a configuração típica |
| View | Modo de visualização da planilha. Valores:
xlsxNormalView, xlsxPageBreakPreviewe
xlsxPageLayoutView. O SaveAs grava o atributo
view correspondente em <sheetView>; o Open lê de volta |
| Zoom | Percentual de zoom da visualização da planilha (10–400; padrão 100, limitado na atribuição). Emite zoomScale="N" dentro de
<sheetView>; o padrão é suprimido para que planilhas intocadas permaneçam limpas |
| DisplayGridLines | Quando False, oculta as linhas de grade de célula na visualização da planilha. Padrão True. Emite
showGridLines="0" quando False |
| DisplayZeros | Quando False, células com valor zero são renderizadas em branco em vez de "0". Padrão True. Emite
showZeros="0" quando False |
| DisplayRightToLeft | Quando True, a planilha é exibida em layout da direita para a esquerda (coluna A à direita), adequado para texto em árabe ou hebraico. Emite rightToLeft="1" |
| StandardWidth | Largura padrão de coluna em unidades de caractere do Excel (por exemplo, 8.43 = padrão interno). Definir um valor > 0 emite
<sheetFormatPr defaultColWidth="..."/>0 = não definido (elemento suprimido) |
| StandardHeight | Altura padrão de linha em pontos (por exemplo, 15 = padrão interno). Definir um valor > 0 emite
defaultRowHeight="..." em
<sheetFormatPr>0 = não definido |
| ClearRangeValues / CopyRange / CopyRangeTo / CopyFrom / MoveRange / SortRange / ClearRange | Operações de intervalo de células. CopyRange e CopyRangeTo duplicam valores, fórmulas, índices de estilo e payloads de rich text; CopyFrom duplica o conteúdo e as configurações da planilha inteira (incluindo células mescladas, configuração de página, estado de visualização, AutoFiltros etc.); esses três copiam apenas o conteúdo das células, então os comentários ficam para trás, e CloneRangeTo ou Sheets.AddCopy leva os comentários com seus runs de rich text; MoveRange ignora sobreposição com o destino; SortRange ordena linhas inteiras dentro de um retângulo por uma ou mais colunas-chave absolutas; ClearRange remove células; ClearRangeValues limpa valores e fórmulas preservando os índices de estilo |
| Range / RCRange / UsedRange | Retornam wrappers de
TXLSXRange
da própria planilha para referências A1, coordenadas numéricas com base 1 ou o fechamento da planilha populada. TXLSXRange.SaveAsHTML(FileName)
e TXLSXRange.SaveAsHTML(Stream) exportam apenas o intervalo selecionado como uma tabela HTML UTF-8. Os wrappers de intervalo também oferecem valores em lote, fórmulas, índices de estilo, formatos numéricos, bordas, flags de proteção, AutoAjuste, mesclagem, deslocamento, redimensionamento, ordenação por múltiplas chaves, estilos de célula internos, copiar/mover e auxiliares de inserção/exclusão de linha ou coluna inteira |
| EntireRow / EntireColumn | Retornam intervalos de linha inteira ou coluna inteira para o índice especificado, adequados para operações estruturais ou propagação de estilo |
| MergeCells(R1, C1, R2, C2) | Adiciona um retângulo mesclado e retorna o índice da nova entrada. As coordenadas são com base 1, inclusivas nas duas extremidades. Equivalente a
MergedCells.Add(R1, C1, R2, C2). Para código no estilo Range,
Range['A1:C3'].Merge(True) grava um intervalo mesclado por linha, correspondendo ao comando Mesclar Através do Excel |
| FillMergedCellValues | Copia o valor da âncora de cada intervalo mesclado para todas as células cobertas, para que planilhas de relatório fiquem como uma grade plana depois. Âncoras vazias ou nulas são ignoradas, de modo que mesclagens pré-preenchidas mantêm o próprio conteúdo, e a quantidade de células preenchidas é retornada |
| FormControls | Coleção de controles de formulário da planilha (botões, caixas de seleção, botões de opção, caixas de combinação, caixas de listagem) criados pela família de auxiliares
AddFormButton / AddFormCheckBox /
AddFormRadioButton / AddFormComboBox /
AddFormListBox . Cada entrada expõe o retângulo de ancoragem, a célula vinculada e o tipo de controle |
| AddHyperlink overloads | Adiciona um hyperlink de URL externo a uma única célula
Display e Tooltip são opcionais. Equivalente a Hyperlinks.Add(...) |
| AddComment overloads | Adiciona um comentário a uma única célula. Author
é opcional. Equivalente a Comments.Add(...) |
| ColWidth[Col] | Largura da coluna em unidades do Excel (a mesma escala usada pela caixa de diálogo de largura de coluna do Excel). Ler uma coluna não definida retorna
0; atribuir um valor define a largura da coluna (base 1). O SaveAs emite uma entrada <col> por coluna personalizada; o Open reproduz o bloco <cols> de volta no mapa |
| RowHeight[Row] | Altura da linha em pontos (a mesma escala usada pela caixa de diálogo de altura de linha do Excel). Ler uma linha não definida retorna 0; atribuir um valor define a altura da linha (base 1). O SaveAs grava os atributos ht e customHeight="1" em cada <row> com altura personalizada, inclusive linhas que carregam apenas altura sem dados de célula |
| SetColWidth / SetRowHeight | Setters diretos usados pelas propriedades indexadas acima Fornecidos como métodos nomeados para quem prefere não usar a sintaxe de propriedade |
| HasColWidth / HasRowHeight | Retorna True quando a planilha tem largura ou altura personalizada para o índice dado. Use isto para distinguir "não definido" de um 0 deliberado |
| ClearColWidths / ClearRowHeights | Descarta toda largura ou altura personalizada de volta ao padrão do Excel |
| ClearRowHidden / ClearColHidden / ClearRowCollapsed / ClearColCollapsed | Descarta todo override de ocultação/recolhimento de linha ou coluna de volta ao estado padrão visível e expandido |
| Images | Coleção de imagens. Use AddImage /
AddImageFromFile como pontos de entrada de conveniência. Veja
TXLSXImage / TXLSXImages |
| HeaderFooterImages | Slots tipados de imagem de cabeçalho e rodapé ímpar, par e primeira página, com propriedades independentes de posição, tamanho, margem, formato, dados e título Veja TXLSXHeaderFooterImage / TXLSXHeaderFooterImages |
| ConditionalFormats | Regras de formatação condicional desta planilha Use AddConditionalFormat como ponto de entrada de conveniência Veja TXLSXConditionalFormat / TXLSXConditionalFormats |
| DataValidations | Regras de validação de dados desta planilha. Use
AddDataValidation / AddListValidation como pontos de entrada de conveniência. Veja
TXLSXDataValidation / TXLSXDataValidations |
| IgnoredErrors | Metadados tipados de supressão de erros da planilha Cada TXLSXIgnoredError combina um SqRef multi-área separado por espaços com as flags padrão de avaliação, data, número armazenado, fórmula, fórmula desbloqueada, referência vazia, validação de dados e coluna calculada As entradas sobrevivem a cópias da planilha e a Round trips de abertura/salvamento, e seus intervalos acompanham inserção ou exclusão de linhas e colunas |
| AddImage / AddImageFromFile | Adiciona uma imagem ancorada a uma célula. AddImage recebe os bytes brutos mais um TXLSXImageFormat; AddImageFromFile lê o arquivo e infere o formato pela extensão. Equivalente a Images.Add na coleção |
| AddConditionalFormat overloads | Adiciona uma regra de formatação condicional cellIs Equivalente a ConditionalFormats.Add(...) |
| AddCondFormatExpression / text / rank / average / duplicate / blank / error helpers | Adiciona regras especializadas de formatação condicional para fórmulas, correspondência de texto, classificações top/bottom, valores acima/abaixo da média, valores duplicados ou únicos, células em branco, não vazias, erros e não erros. O índice retornado pode ser usado com ConditionalFormats[Index].Style para anexar a formatação |
| AddWholeNumberValidation / AddWholeNumberValidation overloads / Whole whole-number validations | Adiciona validações de número inteiro completas com suporte a intervalo ou critérios |
| ProtectedRanges | Coleção de intervalos de células protegidos que exigem autenticação por senha na planilha |
| RawWorksheetExts | Expõe os dados brutos da lista de extensões da planilha para injeção direta de XML |
| SparklineGroups / AddSparklineGroup | Gerencia minigráficos sparkline embutidos em células. AddSparklineGroup cria um grupo referenciando um intervalo de dados |
| ThreadedComments / AddThreadedComment / AddThreadedReply | Suporta conversas modernas de comentários encadeados (respostas). AddThreadedComment cria uma conversa de comentário encadeado de nível superior, e AddThreadedReply anexa uma resposta |
| AddAreaChart / AddBarChart / AddChartFromRange / AddColumnChart / AddLineChart / AddPieChart | Atalhos de criação de gráficos do Excel. AddChartFromRange cria um gráfico ancorado diretamente a partir de dados de células |
| GetSheetProtectOption / SetSheetProtectOption | Obtém ou define flags específicas de permissão de proteção de planilha programaticamente |
| PasteFromClipboard | Cola o conteúdo da área de transferência diretamente a partir das coordenadas especificadas |
| AlignWithMargins | Especifica se as margens de página se alinham ao conteúdo da planilha |
| CodeName | Especifica o nome de código VBA da planilha |
| ConsolidateXml | Expõe dados XML consolidados brutos |
| DifferentFirst | Habilita cabeçalho/rodapé separados para a primeira página |
| DifferentOddEven | Habilita cabeçalhos/rodapés separados para páginas ímpares/pares |
| EvenFooterText / EvenHeaderText | Strings de texto para cabeçalhos e rodapés de páginas pares |
| FirstFooterText / FirstHeaderText | Strings de texto para cabeçalhos e rodapés da primeira página |
| FirstPageNumber | Número da primeira página impressa |
| GridColor | Cor das linhas de grade da planilha |
| HorizontalDpi / VerticalDpi | Resoluções de DPI de impressão para os eixos horizontal e vertical |
| OutlineLevelCol / OutlineLevelRow | Nível de contorno padrão para colunas e linhas |
| PaneState | Estado de rolagem congelada dos painéis |
| PhoneticAlignment / PhoneticFontId / PhoneticType | Alinhamento do texto fonético CJK (ruby), índice de fonte e tipo fonético |
| PrintErrors | Comportamento de impressão de erros de célula |
| ScaleWithDoc | Escala cabeçalhos/rodapés junto com a escala do documento |
| Scenarios | Coleção tipada do Gerenciador de Cenários What-If Cada cenário tem de uma a 32 células de entrada e suporta seu nome, estados bloqueado e oculto, metadados de usuário e comentário, valores armazenados, formatos numéricos e flags de excluído/desfeito
CurrentIndex, ShownIndexe
SqRef expõem o estado do Gerenciador de Cenários no nível da planilha |
| ScenariosXml | Fallback de XML interno bruto legado, usado apenas quando a coleção tipada Scenarios está vazia |
| SheetProtectAlgorithmName / SheetProtectHashValue / SheetProtectSaltValue / SheetProtectSpinCount | Propriedades criptográficas para hashes modernos de senha de proteção de planilha |
| ShowFormulas | Exibe fórmulas em vez de valores |
| ShowOutlineSymbols | Exibe símbolos de grupos de contorno |
| SortState / SortStateXml | Critérios de ordenação tipados e conteúdo XML de ordenação literal |
| SummaryBelow / SummaryRight | Posição da linha e coluna de resumo do contorno |
| UseFirstPageNumber | Usa início explícito de numeração de páginas |
| UsePrinterDefaults | Usa configurações DEVMODE padrão da impressora |
| ZeroHeight | Oculta por padrão as linhas recém-inseridas |
| ZoomNormal / ZoomPageLayout / ZoomSheetLayout | Valores de nível de zoom para os modos de visualização normal, layout de página e quebra de página |
| AddWordArt | Adiciona um controle de forma de texto WordArt à planilha |
| BuildRowMajorCellOrder | Otimiza o armazenamento de células sequencialmente para iteração linha a linha |
| ClearRawDrawingAnchors | Limpa todas as âncoras XML brutos de formas de desenho não mapeadas |
| CreateConditionalFormatEvaluator | Instancia um motor utilitário de avaliação de formatação condicional |
| RawDrawingAnchor / RawDrawingAnchorCount / AddRawDrawingAnchor | Gerencia âncoras XML brutos de formas de desenho não mapeadas
AddRawDrawingAnchor anexa um bloco
<xdr:...Anchor> completo preservado verbatim para o Round trip e retorna o novo TXLSXDrawingObject |
| BringToFront / SendToBack / BringForward / SendBackward | Reordena um objeto de desenho no z-order da planilha:
BringToFront o move acima de todos os outros desenhos,
SendToBack abaixo de todos, e as variantes
Forward / Backward avançam uma posição |
| SaveAsPDF | Exporta a planilha para um arquivo ou stream PDF |
| TryGetOutlineNode / SetOutlineNodeCollapsed / SetOutlineDisplayLevel | Consulta ou altera de forma idempotente os nós de resumo de linhas e colunas com detecção de direção por meio do modelo esparso de contorno compartilhado; veja Sparse outline geometry |
| ToggleColGrouped / ToggleRowGrouped | Wrappers de compatibilidade que aceitam a primeira coluna ou linha de detalhe e alternam seu nó de resumo resolvido |
var
ws: TXLSXWorksheet;
scenario: TXLSXScenario;
begin
ws := Workbook.Sheets.Add('Demo');
ws.Cells.Item[1, 1].Value := 'Title';
ws.MergeCells(1, 1, 1, 3);
ws.ColWidth[1] := 24; // widen column A
ws.RowHeight[1] := 28; // taller title row
ws.Cells.Item[3, 1].Value := 'Visit losLab';
ws.AddHyperlink(3, 1, 'https://www.loslab.com', 'losLab');
ws.AddComment(3, 1, 'Vendor home page', 'Kevin');
ws.AddTextBox('Standalone note', 2, 5, 5, 9);
if ws.FindTextBoxAt(3, 6) <> nil then
ws.DeleteTextBoxesInRange(2, 5, 5, 9);
scenario := ws.Scenarios.Add('Baseline');
scenario.User := 'Analyst';
scenario.Comment := 'Approved assumptions';
scenario.InputCells.Add('B2', '1250').NumberFormatId := 4;
scenario.InputCells.Add('B3', '0.18');
ws.Scenarios.SqRef := 'B2:B3';
end;