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 | Nombre de la pestaña de la hoja tal como lo muestra Excel |
| SetWorkbook / Workbook | Establece y expone la referencia inversa al libro de trabajo que usan los ayudantes de celda y los compartidos del libro de trabajo, como los formatos numéricos compartidos, los rellenos, los bordes y las búsquedas en cadenas compartidas |
| Cells | Colección de celdas. Use Cells.Item[Row, Col].Value
Véase TXLSXCells / TXLSXCell |
| Calculate | Compila y evalúa una cadena de fórmula de Excel en el contexto de esta hoja de cálculo
Un signo igual inicial = se acepta, y las referencias locales de la hoja de cálculo, las celdas de fórmulas referenciadas, las referencias entre hojas, los rangos de nombres definidos y las funciones admitidas de texto, fecha, días laborables, ingeniería/conversión de bases, bit a bit, estadísticas, agregación y matemáticas se resuelven mediante el evaluador de fórmulas compartidas del libro de trabajo |
| GetCellVisibleFormat / Subtotal / SubtotalDefaultEnglishString / CheckDataValidation | GetCellVisibleFormat resuelve el estilo efectivo en una coordenada sin crear una celda vacía. Subtotal agrupa un rectángulo ordenado por cambios en una columna absoluta de la hoja de cálculo, acepta números de función SUBTOTAL de Excel del 1 al 11 o del 101 al 111, inserta filas de fórmula y de esquema y devuelve el número de filas insertadas. SubtotalDefaultEnglishString mapea un número de función SUBTOTAL a su nombre en inglés (por ejemplo 1 a Average y 9 a Total). CheckDataValidation devuelve -1 para un candidato válido o el índice basado en uno de la primera regla que falla, y solo confirma cuando SetIfValid es true y todas las reglas aplicables pasan |
| ForEachCell / ForEachFormattedCell / ForEachRow / FindText / ReplaceText / WriteCells / WriteRows | Asistentes para el escaneo de celdas y filas cargadas, búsqueda de texto, reemplazo de texto y relleno de rangos. ForEachCell recorre las celdas existentes en orden de fila con valor y texto de fórmula. ForEachFormattedCell recorre las celdas pobladas en orden de fila/columna entregando el texto mostrado de cada celda con el formato de número aplicado y devuelve el número de celdas visitadas respetando la cancelación de la devolución de llamada. ForEachRow recorre las filas existentes en orden de fila e informa de la primera y la última columna cargadas de cada fila. FindText y ReplaceText examinan las celdas de texto cargadas en orden de fila, omiten fórmulas y valores que no son texto, y pueden distinguir mayúsculas y minúsculas; las sobrecargas con opciones añaden la semántica del diálogo Buscar de Excel (comodines, coincidencia de celda completa, distinción de mayúsculas, búsqueda de texto de fórmula, escaneo hacia atrás, escaneo por columnas) y FindTextIn / ReplaceTextIn confinan el escaneo a una ventana rectangular con una devolución de llamada opcional de reemplazo por coincidencia. WriteCells pide valores para un rango numérico o estilo A1 y admite omisión y cancelación por celda. WriteRows pide un array Variant para cada fila y admite omisión y cancelación de la fila completa |
| MergedCells | Colección de rangos combinados. Véase TXLSXMergedCells |
| Hyperlinks | Colección de hipervínculos. Véase TXLSXHyperlinks |
| Comments | Colección de comentarios de celda. Véase TXLSXComments |
| Tables / AddTable | Banda de tabla al estilo de Excel sobre la hoja de cálculo. Véase TXLSXTable / TXLSXTables |
| Charts / AddChart | Colección de gráficos anclados. Véase
TXLSXChart / TXLSXCharts
La enumeración de tipos de gráfico admite gráficos de columnas, de barras,
de líneas, circulares, de área, de anillo,
de dispersión, de burbujas y radar
Para un gráfico de página completa, usa
Workbook.AddChartSheet(...) |
| AddTextBox / TextBoxCount / TextBox / FindTextBoxAt | Crea, enumera, localiza, elimina y borra
cuadros de texto de dibujo independientes anclados a rectángulos de celdas
IndexOfTextBoxAt y FindTextBoxAt localizan
el primer cuadro de texto que contiene una celda, mientras que
DeleteTextBoxAt, DeleteTextBoxesInRange,
DeleteTextBox y ClearTextBoxes eliminan
cuadros de texto individuales o agrupados sin tocar los comentarios de celda |
| AddHyperlinkToCell overloads | Hipervínculo de anclaje interno — salta a una
ubicación Sheet!Cell en otra parte del libro. No se genera
la relación rels. Véase
TXLSXHyperlink.Location |
| RowOutlineLevel / ColOutlineLevel | Nivel de anidamiento de grupo (0..7) de la fila o columna
correspondiente. SaveAs emite outlineLevel="N" en la entrada de fila /
columna |
| RowHidden / ColHidden | Booleano — saca la fila o columna de la vista
(hidden="1") |
| RowCollapsed / ColCollapsed | Booleano — marca una fila / columna cuyo grupo
padre está contraído (collapsed="1") |
| FreezePanes(Row, Col) / UnfreezePane | Establece una división inmovilizada: las primeras Row
filas y las primeras Col columnas permanecen visibles mientras el
resto se desplaza. FreezeCol y
FreezeRow son propiedades de solo lectura que exponen la
división actual |
| SetPageMargins / Page setup properties | Los seis márgenes más PageLandscape,
PaperSize, PageScale,
FitToWidth, FitToHeight,
HeaderText, FooterText,
LeftHeader, CenterHeader,
RightHeader, LeftFooter,
CenterFooter, RightFooter,
CenterHorizontally y CenterVertically. Establecer uno solo
dispara los bloques <pageMargins>,
<pageSetup> y <headerFooter>
correspondientes en SaveAs. Use las constantes con nombre xlsxPaper*,
como xlsxPaperLetter, xlsxPaperA4,
xlsxPaperA3 y xlsxPaperLegal, en lugar de los
códigos crudos de tamaño de papel de Excel siempre que sea posible |
| Visibility | Visibilidad de la hoja: xlsxSheetVisible
(predeterminado), xlsxSheetHidden (oculta pero revisible desde la
interfaz de Excel) o xlsxSheetVeryHidden (requiere VBA o
código para volver a mostrarla). SaveAs emite un atributo state en el
elemento <sheet> de xl/workbook.xmlVisible es un alias booleano de conveniencia para las operaciones
comunes de mostrar u ocultar |
| SetIsSelected / IsSelected | Cuando es True, la pestaña de la hoja aparece
seleccionada (resaltada). Se pueden seleccionar varias hojas
simultáneamente. SaveAs emite tabSelected="1" en el
<sheetView> coincidente |
| AutoFitColumn / AutoFitColumns | AutoFitColumn(Col, MinWidth, MaxWidth) mide todas las
celdas de la columna y ajusta ColWidth[Col] al contenido más ancho
(ASCII = 1 carácter, CJK = 2 caracteres, escala Calibri 11pt) y después aplica límites opcionales de anchura mínima y máxima
AutoFitColumns(Min, Max, MinWidth, MaxWidth) itera el rango de columnas,
limitado a la última columna con celdas |
| AutoFitRow / AutoFitRows | AutoFitRow(Row, MinHeight, MaxHeight) establece
RowHeight[Row] al contenido de celda más alto de esa fila
(en puntos) y después aplica límites opcionales de altura mínima y máxima
AutoFitRows(Min, Max, MinHeight, MaxHeight) itera el rango de filas,
limitado a la última fila con celdas |
| InsertRows / DeleteRows | InsertRows(BeforeRow, Count) desplaza
todas las filas a partir de BeforeRow inclusive
Count posiciones hacia abajo. DeleteRows(StartRow, Count) elimina
las filas [StartRow, StartRow+Count-1] y arrastra el resto
hacia arriba. Ambas operaciones se propagan en cascada por celdas, rangos combinados, alturas de fila,
niveles de esquema, marcas de ocultación, hipervínculos, comentarios, panel inmovilizado y
referencias de autofiltro / formato condicional / validación de datos, tablas,
fórmulas de celda, fórmulas de formato condicional / validación de datos,
destinos internos de hipervínculos, referencias de configuración de página, saltos de página manuales, criterios de columna del autofiltro, rangos de series de gráficos y nombres definidos
que apuntan a la hoja de cálculo editada, además de anclajes de imágenes y anclajes de gráficos |
| InsertCols / DeleteCols | Igual que InsertRows / DeleteRows pero
operando sobre columnas. Las anchuras de columna, los niveles de esquema y las marcas
de ocultación también se actualizan |
| AddRowBreak / AddColBreak | AddRowBreak(N) inserta un salto de página
manual antes de la fila N (es decir, la fila N empieza una
página impresa nueva). AddColBreak(N) corta antes de la columna
N. SaveAs escribe <rowBreaks> /
<colBreaks> en el XML de la hoja |
| HasRowBreak / HasColBreak / IndexOfRowBreak / IndexOfColBreak | Consulta o localiza un salto manual único por su índice "before" |
| RemoveRowBreak / RemoveColBreak / RemoveRowBreaksInRange / RemoveColBreaksInRange | Quita un salto manual o todos los saltos de un intervalo inclusivo de filas / columnas; los ayudantes de rango aceptan coordenadas invertidas y devuelven el número de saltos eliminados |
| ClearRowBreaks / ClearColBreaks / ClearAllPageBreaks | Elimina todos los saltos de fila, todos los saltos de columna, o ambos |
| RowBreakCount / ColBreakCount / RowBreaks[i] / ColBreaks[i] | Recorre los índices de salto almacenados (valores "Before" basados en uno) |
| KeepRowLinkLevel / KeepColLinkLevel | Devuelven el nivel de mantenimiento conjunto más fuerte que vincula
la fila (o columna) posterior al índice dado con el bloque de arriba (o de la
izquierda), o 0 cuando la posición no está dentro de un
bloque de mantenimiento conjunto |
| PrintGridlines / PrintHeadings | Cuando es True, SaveAs emite
printGridLines="1" /
printRowColHeadings="1" dentro de
<printOptions> para que las líneas de cuadrícula o los
encabezados de fila/columna aparezcan en la página impresa |
| BlackAndWhite / Draft / PrintNotes / PrintOverThenDown | Opciones de impresión en <pageSetup>:
BlackAndWhite renderiza en blanco y negro;
Draft omite los gráficos para una vista previa más rápida;
PrintNotes imprime los comentarios de celda tal como se muestran;
PrintOverThenDown cambia el orden de página a
primero de izquierda a derecha en lugar de primero de arriba a abajo |
| PrintArea | La región rectangular que Excel imprime
(p. ej. "$A$1:$D$10"). Se escribe como un
<definedName name="_xlnm.Print_Area"> a nivel de libro
con ámbito en esta hoja. Cadena vacía = sin establecer |
| PrintTitleRows / PrintTitleCols | Rangos de filas o columnas que se repiten en cada página
impresa (p. ej. "$1:$3" u "$A:$B"). Se escriben como
<definedName name="_xlnm.Print_Titles"> |
| SetAutoFilter / AutoFilterRange | Establece el rango del filtro
(p. ej. "A1:C100"); SaveAs escribe
<autoFilter ref="..."/> |
| AutoFilterColumns / AddAutoFilterColumn / ClearAutoFilterColumns | Criterios de filtro por columna adjuntos al rango del autofiltro.
AddAutoFilterColumn(ColId, Op, Criteria) añade un
filtro de un solo criterio; la sobrecarga de dos criterios añade un par AND/OR
AutoFilterColumns.FindByColId(ColId) devuelve un objeto de
criterios existente, y AutoFilterColumns.DeleteByColId(ColId)
elimina uno sin recorrer Items manualmente, y
AutoFilterColumns.ClearCriteria borra todos los criterios de columna
conservando el rango del filtro
ColId es el desplazamiento de base cero dentro del rango del autofiltro
(no la columna de la hoja). SaveAs escribe elementos <filterColumn>
dentro de <autoFilter> |
| AutoFilterRowVisible / PreviewAutoFilterRows / ApplyAutoFilter | AutoFilterRowVisible(Row) evalúa los criterios XLSX AutoFilter almacenados para una fila de datos. PreviewAutoFilterRows recorre las filas de datos de AutoFilterRange, informa del estado de visibilidad de cada fila a través de un callback, devuelve el número de filas visibles recorridas y no modifica las marcas de ocultación de filas. ApplyAutoFilter aplica los criterios del autofiltro, oculta las filas que no coinciden y devuelve si la operación tuvo éxito |
| Protect / UnProtect / IsProtected | Conmutador de protección a nivel de hoja con un hash de contraseña heredado opcional de 16 bits. Se refleja como
<sheetProtection> |
| AllowOption / SheetProtectionOptions | 15 opciones de permisos de protección de grano fino (como dar formato a celdas, insertar filas/columnas, ordenar, usar autofiltro, seleccionar celdas bloqueadas/desbloqueadas, etc.), equivalentes a la lista de permisos de "Proteger hoja" de Excel |
| PageSetupTouched / SheetProtectHash | Use PageSetupTouched para comprobar si los
valores de configuración de página se modificaron explícitamente, y
SheetProtectHash para leer/escribir el texto hash de protección de hoja
heredado de 16 bits que usan los formatos de archivo XLS antiguos |
| AddPivotTable / AddPivotTableCopy / PivotSetDataFieldFormat | Métodos para crear, copiar y dar formato a tablas dinámicas. AddPivotTable construye una tabla dinámica a partir de un rango de origen en notación A1 como 'Data!A1:C9' y la ancla en la celda basada en uno DestRow, DestCol; devuelve nil si el origen está mal formado o el ancla queda fuera de la hoja. AddPivotTableCopy copia en profundidad una tabla dinámica existente, de esta hoja o de otro libro, a un nuevo ancla basada en uno en esta hoja de cálculo (un NewName vacío produce '<source> (2)'). PivotSetDataFieldFormat registra un formato de número para un campo de datos y devuelve su índice de formato de número |
| PivotTables | Colección de tablas dinámicas definidas en esta hoja de cálculo |
| MarginLeftCM / MarginRightCM / MarginTopCM / MarginBottomCM / MarginHeaderCM / MarginFooterCM | Márgenes de configuración de página representados en centímetros |
| TabColor / TabColorIsAuto | Color ARGB para la pestaña de la hoja de cálculo en Excel;
asignar TabColor pone TabColorIsAuto a
False
Con TabColorIsAuto = True (por defecto) se
omite el hijo <tabColor> de <sheetPr> |
| IsChartSheet | Cuando es True, SaveAs escribe la hoja en
xl/chartsheets/sheetN.xml en lugar de
xl/worksheets/sheetN.xml y aloja
Charts[0] a página completa. Use el
ayudante Workbook.AddChartSheet(...) para el montaje
típico |
| View | Modo de vista de la hoja de cálculo. Los valores son
xlsxNormalView, xlsxPageBreakPreview y
xlsxPageLayoutView. SaveAs escribe el
atributo view correspondiente en <sheetView>; Open
lo vuelve a leer |
| Zoom | Porcentaje de zoom de la vista de hoja (10–400; valor por defecto 100,
limitado al asignar). Emite zoomScale="N" dentro de
<sheetView>; el valor por defecto se suprime para que las hojas
intactas permanezcan limpias |
| DisplayGridLines | Cuando es False, oculta las líneas de cuadrícula de las celdas
en la vista de la hoja. Por defecto True. Emite
showGridLines="0" cuando es False |
| DisplayZeros | Cuando es False, las celdas con valor cero
se renderizan en blanco en lugar de "0". Por defecto True. Emite
showZeros="0" cuando es False |
| DisplayRightToLeft | Cuando es True, la hoja se muestra con
disposición de derecha a izquierda (la columna A a la derecha), adecuada para texto
en árabe o hebreo. Emite rightToLeft="1" |
| StandardWidth | Anchura de columna por defecto en unidades de carácter de Excel
(p. ej. 8.43 = valor por defecto integrado). Establecer un valor > 0 emite
<sheetFormatPr defaultColWidth="..."/>0 = sin establecer (elemento suprimido) |
| StandardHeight | Altura de fila por defecto en puntos (p. ej. 15 = valor por
defecto integrado). Establecer un valor > 0 emite
defaultRowHeight="..." en
<sheetFormatPr>0 = sin establecer |
| ClearRangeValues / CopyRange / CopyRangeTo / CopyFrom / MoveRange / SortRange / ClearRange | Operaciones de rango de celdas. CopyRange y CopyRangeTo duplican valores, fórmulas, índices de estilo y payloads de texto enriquecido; CopyFrom duplica todo el contenido y la configuración de la hoja de cálculo (incluidas las celdas combinadas, la configuración de página, el estado de vista, los autofiltros, etc.); estos tres solo copian el contenido de las celdas, de modo que los comentarios se quedan atrás, y CloneRangeTo o Sheets.AddCopy lleva los comentarios con sus fragmentos de texto enriquecido; MoveRange omite el solapamiento del destino; SortRange ordena filas completas dentro de un rectángulo por una o más columnas clave absolutas; ClearRange elimina celdas; ClearRangeValues borra valores y fórmulas conservando los índices de estilo |
| Range / RCRange / UsedRange | Devuelve
TXLSXRange
propios de la hoja, como envoltorios para referencias A1, coordenadas numéricas basadas en uno o la
clausura de celdas con contenido de la hoja de cálculo. TXLSXRange.SaveAsHTML(FileName)
y TXLSXRange.SaveAsHTML(Stream) exportan solo el
rango seleccionado como una tabla HTML UTF-8. Los envoltorios de rango también proporcionan
valores por lotes, fórmulas, índices de estilo, formatos numéricos, bordes,
marcas de protección, autoajuste, combinación, desplazamiento, cambio de tamaño, ordenación por
varias claves, estilos de celda integrados, copiar/mover y ayudantes de inserción/eliminación de
filas o columnas enteras |
| EntireRow / EntireColumn | Devuelve rangos de fila completa o de columna completa para el índice especificado, adecuados para operaciones estructurales o para propagar estilos |
| MergeCells(R1, C1, R2, C2) | Añade un rectángulo combinado y devuelve el índice de la nueva
entrada. Las coordenadas están basadas en uno, con ambos extremos inclusivos. Equivale a
MergedCells.Add(R1, C1, R2, C2). Para código estilo rango,
Range['A1:C3'].Merge(True) escribe un rango combinado por
fila, equivalente al comando de combinación a lo ancho de Excel |
| FillMergedCellValues | Copia el valor del ancla de cada rango combinado en todas las celdas miembro cubiertas, de modo que las hojas estilo informe se lean después como una cuadrícula plana. Los anclas vacíos o nulos se omiten, de modo que las combinaciones prerrellenadas conservan su propio contenido, y se devuelve el número de celdas rellenadas |
| FormControls | Colección de controles de formulario de la hoja de cálculo (botones,
casillas, botones de opción, cuadros combinados, cuadros de lista) creados por la
familia de asistentes
AddFormButton / AddFormCheckBox /
AddFormRadioButton / AddFormComboBox /
AddFormListBox . Cada entrada expone el
rectángulo ancla, la celda vinculada y el tipo de control |
| AddHyperlink overloads | Añade un hipervínculo de URL externa a una sola celda
Display y Tooltip son opcionales. Equivale
a Hyperlinks.Add(...) |
| AddComment overloads | Añade un comentario a una sola celda. Author
es opcional. Equivale a Comments.Add(...) |
| ColWidth[Col] | Anchura de columna en unidades de Excel (la misma escala que usa
el diálogo de anchura de columna de Excel). Leer una columna sin establecer devuelve
0; asignar un valor fija la anchura de esa columna basada en uno.
SaveAs emite una entrada <col> por cada columna
personalizada; Open reproduce el bloque <cols> de nuevo en el
mapa |
| RowHeight[Row] | Altura de fila en puntos (la misma escala que usa el
diálogo de altura de fila de Excel). Leer una fila sin establecer devuelve 0;
asignar un valor fija la altura de esa fila basada en uno. SaveAs escribe
los atributos ht y customHeight="1" en
cada <row> con altura personalizada, incluso filas que
solo llevan altura sin datos de celda |
| SetColWidth / SetRowHeight | Setters directos usados por las propiedades indexadas anteriores Se proporcionan como métodos con nombre para los llamadores que prefieren no usar la sintaxis de propiedades |
| HasColWidth / HasRowHeight | Devuelve True cuando la hoja de cálculo tiene una
anchura o altura personalizada para el índice dado. Sirve para
distinguir "sin establecer" de un 0 real |
| ClearColWidths / ClearRowHeights | Devuelve todas las anchuras o alturas personalizadas al valor por defecto de Excel |
| ClearRowHidden / ClearColHidden / ClearRowCollapsed / ClearColCollapsed | Descarta todas las anulaciones de oculto/contraído de filas o columnas y las devuelve al estado predeterminado de visible y expandido |
| Images | Colección de imágenes. Use AddImage /
AddImageFromFile como puntos de entrada de conveniencia. Véase
TXLSXImage / TXLSXImages |
| HeaderFooterImages | Ranuras tipadas de imágenes de encabezado y pie impares, pares y de primera página, con propiedades independientes de posición, tamaño, margen, formato, datos y título. Vea TXLSXHeaderFooterImage / TXLSXHeaderFooterImages |
| ConditionalFormats | Reglas de formato condicional de esta hoja de cálculo
Use AddConditionalFormat como punto de entrada de conveniencia
Véase TXLSXConditionalFormat / TXLSXConditionalFormats |
| DataValidations | Reglas de validación de datos de esta hoja de cálculo. Use
AddDataValidation / AddListValidation como
puntos de entrada de conveniencia. Véase
TXLSXDataValidation / TXLSXDataValidations |
| IgnoredErrors | Metadatos tipados de supresión de errores de la hoja de cálculo
Cada TXLSXIgnoredError combina un SqRef multipersistencia
separado por espacios en blanco con los indicadores estándar de evaluación, fecha,
número almacenado, fórmula, fórmula desbloqueada, referencia vacía,
validación de datos y columna calculada
Las entradas sobreviven a las copias de hojas y a los round-trips de abrir/guardar, y
sus rangos siguen las inserciones o eliminaciones de filas y columnas |
| AddImage / AddImageFromFile | Añade una imagen anclada a una celda. AddImage toma
los bytes crudos más un TXLSXImageFormat;
AddImageFromFile lee el archivo e infiere el formato a partir de su
extensión. Equivale a Images.Add en la colección |
| AddConditionalFormat overloads | Añade una regla de formato condicional cellIs
Equivale a ConditionalFormats.Add(...) |
| AddCondFormatExpression / text / rank / average / duplicate / blank / error helpers | Añade reglas de formato condicional especializadas para fórmulas, coincidencia de texto, clasificaciones superiores/inferiores, valores por encima o por debajo de la media, valores duplicados o únicos, celdas en blanco, no vacías, con errores y sin errores. El índice devuelto puede usarse con ConditionalFormats[Index].Style para adjuntar el formato |
| AddWholeNumberValidation / AddWholeNumberValidation overloads / Whole whole-number validations | Añade validaciones completas de números enteros con soporte de rango o criterios |
| ProtectedRanges | Colección de rangos de celdas protegidos que exigen autenticación por contraseña en la hoja |
| RawWorksheetExts | Expone los datos crudos de la lista de extensiones de la hoja para inyección XML directa |
| SparklineGroups / AddSparklineGroup | Gestiona minigráficos sparkline en línea dentro de celdas. AddSparklineGroup crea un grupo que referencia un rango de datos |
| ThreadedComments / AddThreadedComment / AddThreadedReply | Da soporte a conversaciones modernas de comentarios encadenados (respuestas). AddThreadedComment crea una conversación de comentario encadenado de nivel superior, y AddThreadedReply añade una respuesta |
| AddAreaChart / AddBarChart / AddChartFromRange / AddColumnChart / AddLineChart / AddPieChart | Atajos de gráficos de Excel. AddChartFromRange crea un gráfico anclado directamente a partir de los datos de las celdas |
| GetSheetProtectOption / SetSheetProtectOption | Lee o establece mediante programación indicadores concretos de permiso de protección de hoja |
| PasteFromClipboard | Pega el contenido del portapapeles directamente a partir de las coordenadas especificadas |
| AlignWithMargins | Especifica si los márgenes de página se alinean con el contenido de la hoja de cálculo |
| CodeName | Especifica el nombre de código VBA de la hoja |
| ConsolidateXml | Expone los datos XML consolidados en crudo |
| DifferentFirst | Activa un encabezado y pie independientes para la primera página |
| DifferentOddEven | Activa encabezados y pies independientes para páginas pares e impares |
| EvenFooterText / EvenHeaderText | Cadenas de texto para los encabezados y pies de las páginas pares |
| FirstFooterText / FirstHeaderText | Cadenas de texto para los encabezados y pies de la primera página |
| FirstPageNumber | Número de la primera página impresa |
| GridColor | Color de las líneas de cuadrícula de la hoja |
| HorizontalDpi / VerticalDpi | Resoluciones DPI de impresión para los ejes horizontal y vertical |
| OutlineLevelCol / OutlineLevelRow | Nivel de esquema por defecto para columnas y filas |
| PaneState | Estado de desplazamiento del panel inmovilizado |
| PhoneticAlignment / PhoneticFontId / PhoneticType | Alineación de texto fonético ruby CJK, índice de fuente y tipo fonético |
| PrintErrors | Comportamiento de impresión de los errores de celda |
| ScaleWithDoc | Escala encabezados y pies junto con la escala del documento |
| Scenarios | Colección tipada del Administrador de escenarios What-If
Cada escenario posee de una a 32 celdas de entrada y admite su nombre,
los estados bloqueado y oculto, metadatos de usuario y comentario, valores almacenados,
formatos de número e indicadores de eliminado o deshecho
CurrentIndex, ShownIndexy
SqRef exponen el estado del Administrador de escenarios a nivel de hoja de cálculo |
| ScenariosXml | Contenido XML de los escenarios What-If cuando la colección Scenarios está vacía |
| SheetProtectAlgorithmName / SheetProtectHashValue / SheetProtectSaltValue / SheetProtectSpinCount | Propiedades criptográficas para los hashes de contraseña de protección de hoja modernos |
| ShowFormulas | Muestra las fórmulas en lugar de los valores |
| ShowOutlineSymbols | Muestra los símbolos de los grupos de esquema |
| SortState / SortStateXml | Criterios de ordenación tipados y contenido XML de ordenación verbatim |
| SummaryBelow / SummaryRight | Posición de las filas y columnas de resumen del esquema |
| UseFirstPageNumber | Usa un inicio explícito de numeración de páginas |
| UsePrinterDefaults | Usa los ajustes DEVMODE por defecto de la impresora |
| ZeroHeight | Oculta por defecto las filas recién insertadas |
| ZoomNormal / ZoomPageLayout / ZoomSheetLayout | Valores de nivel de zoom para las vistas normal, de diseño de página y de salto de página |
| AddWordArt | Añade una forma de texto WordArt a la hoja de cálculo |
| BuildRowMajorCellOrder | Optimiza el almacenamiento de celdas de forma secuencial para iteración por filas |
| ClearRawDrawingAnchors | Limpia todas las anclas XML de formas de dibujo sin mapear |
| CreateConditionalFormatEvaluator | Crea una instancia de un motor de utilidad de evaluación de formato condicional |
| RawDrawingAnchor / RawDrawingAnchorCount / AddRawDrawingAnchor | Gestiona anclas XML de formas de dibujo sin mapear y sin procesar
AddRawDrawingAnchor añade un bloque
<xdr:...Anchor> completo preservado verbatim para el
round-trip y devuelve el nuevo TXLSXDrawingObject |
| BringToFront / SendToBack / BringForward / SendBackward | Reordenan un objeto de dibujo en el orden z de la hoja:
BringToFront lo mueve por encima de todos los demás dibujos,
SendToBack por debajo de todos, y las variantes
Forward / Backward lo avanzan una
posición |
| SaveAsPDF | Exporta la hoja de cálculo a un archivo o stream PDF |
| TryGetOutlineNode / SetOutlineNodeCollapsed / SetOutlineDisplayLevel | Consultan o cambian de forma idempotente los nodos de resumen de filas y columnas conscientes de la dirección a través del modelo de esquema disperso compartido; vea Geometría de esquema dispersa |
| ToggleColGrouped / ToggleRowGrouped | Alterna el estado contraído de la agrupación de columnas o filas |
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;