Documentación de HotXLS

Clase TXLSXWorksheet

Hoja de cálculo única dentro de un TXLSXWorkbook Es propietaria de la colección de celdas más las colecciones de celdas combinadas, hipervínculos y comentarios. Declarada en lxHandleX

Declaración

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;
      

Miembros

NameNombre de la pestaña de la hoja de cálculo tal como lo muestra Excel
SetWorkbook / WorkbookEstablece y expone la referencia inversa al libro de trabajo usada por los asistentes de celdas y compartidos del libro de trabajo, como formatos de número compartidos, rellenos, bordes y búsquedas de cadenas compartidas
CellsColección de celdas. Use Cells.Item[Row, Col].Value Consulte TXLSXCells / TXLSXCell
CalculateCompila y evalúa una cadena de fórmula de Excel en el contexto de esta hoja de cálculo. Se acepta un = inicial, y el evaluador de fórmulas compartido del libro de trabajo resuelve las referencias locales de la hoja, las celdas de fórmula referenciadas, las referencias entre hojas, los rangos de nombres definidos y las funciones de texto, fecha, días laborables, ingeniería/conversión de base, bit a bit, estadísticas, agregación y matemáticas soportadas
GetCellVisibleFormat / Subtotal / SubtotalDefaultEnglishString / CheckDataValidationGetCellVisibleFormat resuelve el estilo efectivo en una coordenada sin crear una celda vacía. Subtotal agrupa un rectángulo ordenado por los cambios de una columna absoluta de la hoja de cálculo, acepta los 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 de base 1 de la primera regla que falla, y solo confirma cuando SetIfValid es verdadero y todas las reglas aplicables pasan
ForEachCell / ForEachFormattedCell / ForEachRow / FindText / ReplaceText / WriteCells / WriteRowsAsistentes para el escaneo de celdas y filas cargadas, búsqueda de texto, reemplazo de texto y llenado de rangos. ForEachCell recorre las celdas existentes en orden de fila con el valor y el texto de fórmula. ForEachFormattedCell recorre las celdas pobladas en orden de fila/columna entregando el texto de visualización de cada celda con el formato numérico aplicado, devuelve el número de celdas visitadas y respeta la cancelación del callback. ForEachRow recorre las filas existentes en orden de fila e informa la primera y última columna cargada de cada fila. FindText y ReplaceText escanean las celdas de texto cargadas en orden de fila, omiten fórmulas y valores que no son texto, y pueden distinguir mayúsculas; las sobrecargas con opciones agregan 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órmulas, escaneo hacia atrás, escaneo por columnas) y FindTextIn / ReplaceTextIn confinan el escaneo a una ventana rectangular con un callback opcional de reemplazo por coincidencia. WriteCells solicita valores para un rango numérico o de estilo A1 y admite omisión y cancelación por celda. WriteRows solicita un arreglo Variant por fila y admite omisión y cancelación de filas completas
MergedCellsColección de rangos combinados. Consulte TXLSXMergedCells
HyperlinksColección de hipervínculos. Consulte TXLSXHyperlinks
CommentsColección de comentarios de celda. Consulte TXLSXComments
Tables / AddTableBanda de tabla al estilo de Excel en la hoja de cálculo. Consulte TXLSXTable / TXLSXTables
Charts / AddChartColección de gráficos anclados. Consulte TXLSXChart / TXLSXCharts . El enum de tipos de gráfico admite gráficos de columnas, barras, líneas, circulares, de área, de anillos, de dispersión, de burbujas y radar. Para un gráfico de página completa, use Workbook.AddChartSheet(...)
AddTextBox / TextBoxCount / TextBox / FindTextBoxAtCrea, enumera, localiza, elimina y limpia 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, DeleteTextBoxy ClearTextBoxes eliminan cuadros de texto individuales o agrupados sin tocar los comentarios de celda
AddHyperlinkToCell overloadsHipervínculo de anclaje interno — salta a una ubicación Sheet!Cell de otra parte del libro de trabajo. No se genera una relación rels. Consulte TXLSXHyperlink.Location
RowOutlineLevel / ColOutlineLevelNivel de anidamiento de grupos (0..7) para la fila o columna correspondiente. SaveAs emite outlineLevel="N" en la entrada de la fila / columna
RowHidden / ColHiddenBooleano — saca la fila o columna de la vista (hidden="1")
RowCollapsed / ColCollapsedBooleano — marca una fila / columna cuyo padre de agrupación está contraído (collapsed="1")
FreezePanes(Row, Col) / UnfreezePaneEstablece una división inmovilizada — las primeras Row filas y las Col columnas de la izquierda permanecen visibles mientras el resto se desplaza. FreezeCol y FreezeRow son propiedades de solo lectura que exponen la división actual
SetPageMargins / Page setup propertiesLos seis márgenes más PageLandscape, PaperSize, PageScale, FitToWidth, FitToHeight, HeaderText, FooterText, LeftHeader, CenterHeader, RightHeader, LeftFooter, CenterFooter, RightFooter, CenterHorizontallyy CenterVertically. Ajustar cualquiera de ellos dispara los bloques <pageMargins>, <pageSetup>y <headerFooter> correspondientes al guardar. Use las constantes con nombre xlsxPaper* como xlsxPaperLetter, xlsxPaperA4, xlsxPaperA3y xlsxPaperLegal en lugar de los códigos crudos de tamaño de papel de Excel, cuando sea posible
VisibilityVisibilidad de la hoja: xlsxSheetVisible (predeterminada), xlsxSheetHidden (oculta pero recuperable desde la UI de Excel) o xlsxSheetVeryHidden (requiere VBA o código para mostrarse). 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 / IsSelectedCuando es True, la pestaña de la hoja aparece seleccionada (resaltada). Varias hojas pueden estar seleccionadas a la vez. SaveAs emite tabSelected="1" en el <sheetView>
AutoFitColumn / AutoFitColumnsAutoFitColumn(Col, MinWidth, MaxWidth) mide cada celda de la columna y asigna a ColWidth[Col] el ancho del contenido más ancho (ASCII = 1 carácter, CJK = 2 caracteres, escala Calibri 11 pt), y luego aplica límites opcionales de ancho mínimo y máximo. AutoFitColumns(Min, Max, MinWidth, MaxWidth) itera el rango de columnas, acotado a la última columna con celdas
AutoFitRow / AutoFitRowsAutoFitRow(Row, MinHeight, MaxHeight) asigna a RowHeight[Row] el alto del contenido de celda más alto de esa fila (en puntos), y luego aplica límites opcionales de alto mínimo y máximo. AutoFitRows(Min, Max, MinHeight, MaxHeight) itera el rango de filas, acotado a la última fila con celdas
InsertRows / DeleteRowsInsertRows(BeforeRow, Count) desplaza hacia abajo BeforeRow filas todas las filas desde Count. DeleteRows(StartRow, Count) elimina las filas [StartRow, StartRow+Count-1] y sube el resto. Ambas operaciones tienen efecto en cascada sobre celdas, rangos combinados, altos de fila, niveles de esquema, flags de ocultación, hipervínculos, comentarios, panel inmovilizado, referencias de autofiltro / formato condicional / validación de datos, tablas, fórmulas de celda, fórmulas de formato condicional / validación de datos, destinos de hipervínculos internos, referencias de configuración de impresión, saltos de página manuales, criterios de columna de autofiltro, rangos de series de gráficos y nombres definidos que apuntan a la hoja editada, anclas de imágenes y anclas de gráficos
InsertCols / DeleteColsIgual que InsertRows / DeleteRows pero operando sobre columnas. Los anchos de columna, los niveles de esquema y los flags de ocultación también se actualizan
AddRowBreak / AddColBreakAddRowBreak(N) inserta un salto de página manual antes de la fila N (es decir, la fila N inicia una nueva página impresa). AddColBreak(N) rompe antes de la columna N. SaveAs escribe <rowBreaks> / <colBreaks> en el XML de la hoja
HasRowBreak / HasColBreak / IndexOfRowBreak / IndexOfColBreakConsulta o localiza un salto manual único por su índice "anterior"
RemoveRowBreak / RemoveColBreak / RemoveRowBreaksInRange / RemoveColBreaksInRangeElimina un salto manual o todos los saltos de un intervalo inclusivo de filas / columnas; los asistentes de rango aceptan coordenadas invertidas y devuelven el número de saltos eliminados
ClearRowBreaks / ClearColBreaks / ClearAllPageBreaksElimina todos los saltos de fila, todos los saltos de columna, o ambos
RowBreakCount / ColBreakCount / RowBreaks[i] / ColBreaks[i]Itera los índices de saltos almacenados (valores "anterior" de base 1)
KeepRowLinkLevel / KeepColLinkLevelDevuelve el nivel keep-together 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 keep-together
PrintGridlines / PrintHeadingsCuando 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 / PrintOverThenDownOpciones de impresión en <pageSetup>: BlackAndWhite renderiza en blanco y negro; Draft suprime 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áginas a primero de izquierda a derecha en lugar de primero de arriba abajo
PrintAreaLa 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 de trabajo con ámbito en esta hoja. Cadena vacía = sin establecer
PrintTitleRows / PrintTitleColsRangos de filas o columnas que se repiten en cada página impresa (p. ej. "$1:$3" o "$A:$B"). Se escriben como <definedName name="_xlnm.Print_Titles">
SetAutoFilter / AutoFilterRangeEstablece el rango del filtro (p. ej. "A1:C100"); SaveAs escribe <autoFilter ref="..."/>
AutoFilterColumns / AddAutoFilterColumn / ClearAutoFilterColumnsCriterios de filtro por columna adjuntos al rango del autofiltro. AddAutoFilterColumn(ColId, Op, Criteria) agrega un filtro de un solo criterio; la sobrecarga de dos criterios agrega un par AND/OR. AutoFilterColumns.FindByColId(ColId) devuelve un objeto de criterios existente, AutoFilterColumns.DeleteByColId(ColId) elimina uno sin escanear Items manualmente, y AutoFilterColumns.ClearCriteria limpia todos los criterios de columna conservando el rango del filtro. ColId es el desfase de base 0 dentro del rango del autofiltro (no la columna de la hoja). SaveAs escribe hijos <filterColumn> dentro de <autoFilter>
AutoFilterRowVisible / PreviewAutoFilterRows / ApplyAutoFilterAutoFilterRowVisible(Row) evalúa los criterios de AutoFiltro XLSX almacenados para una fila de datos. PreviewAutoFilterRows recorre las filas de datos de AutoFilterRange, informa el estado de visibilidad de cada fila mediante un callback, devuelve el número de filas visibles visitadas y no cambia los flags de ocultación de filas. ApplyAutoFilter aplica los criterios del autofiltro, oculta las filas que no coinciden y devuelve si tuvo éxito
Protect / UnProtect / IsProtectedInterruptor de protección a nivel de hoja con un hash opcional de contraseña heredado de 16 bits. Se refleja como <sheetProtection>
AllowOption / SheetProtectionOptions15 opciones de permisos de protección de grano fino (como dar formato a celdas, insertar filas/columnas, ordenar, autofiltrar, seleccionar celdas bloqueadas/desbloqueadas, etc.), correspondientes a la lista de permisos de "Proteger hoja" de Excel
PageSetupTouched / SheetProtectHashUse PageSetupTouched para inspeccionar si los valores de configuración de página se modificaron explícitamente, y SheetProtectHash para leer/escribir el texto del hash heredado de 16 bits de protección de hoja que usan los formatos de archivo XLS heredados
AddPivotTable / AddPivotTableCopy / PivotSetDataFieldFormatMé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 de trabajo, a un nuevo ancla basada en uno en esta hoja de cálculo (un NewName vacío da como resultado '<source> (2)'). PivotSetDataFieldFormat registra un formato de número para un campo de datos y devuelve su índice de formato de número
PivotTablesColección de tablas dinámicas definidas en esta hoja de cálculo
MarginLeftCM / MarginRightCM / MarginTopCM / MarginBottomCM / MarginHeaderCM / MarginFooterCMMárgenes de configuración de página representados en centímetros
TabColor / TabColorIsAutoColor ARGB para la pestaña de la hoja de cálculo en Excel; asignar TabColor establece TabColorIsAuto en False. Con TabColorIsAuto = True (predeterminado) se suprime el hijo <tabColor> de <sheetPr>
IsChartSheetCuando 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 asistente Workbook.AddChartSheet(...) para la configuración típica
ViewModo de vista de la hoja de cálculo. Los valores son xlsxNormalView, xlsxPageBreakPreviewy xlsxPageLayoutView. SaveAs escribe el atributo view correspondiente en <sheetView>; Open lo vuelve a leer
ZoomPorcentaje de zoom de la vista de la hoja (10-400; predeterminado 100, acotado al asignar). Emite zoomScale="N" dentro de <sheetView>; el valor predeterminado se suprime para que las hojas intactas permanezcan limpias
DisplayGridLinesCuando es False, oculta las líneas de cuadrícula de celdas en la vista de la hoja. Predeterminado True. Emite showGridLines="0" cuando es False
DisplayZerosCuando es False, las celdas con valor cero se renderizan en blanco en lugar de "0". Predeterminado True. Emite showZeros="0" cuando es False
DisplayRightToLeftCuando es True, la hoja se muestra con diseño de derecha a izquierda (columna A a la derecha), adecuado para texto en árabe o hebreo. Emite rightToLeft="1"
StandardWidthAncho de columna predeterminado en unidades de carácter de Excel (p. ej. 8.43 = predeterminado integrado). Asignar un valor > 0 emite <sheetFormatPr defaultColWidth="..."/>0 = sin establecer (elemento suprimido)
StandardHeightAlto de fila predeterminado en puntos (p. ej. 15 = predeterminado integrado). Asignar un valor > 0 emite defaultRowHeight="..." en <sheetFormatPr>0 = sin establecer
ClearRangeValues / CopyRange / CopyRangeTo / CopyFrom / MoveRange / SortRange / ClearRangeOperaciones de rangos de celdas. CopyRange y CopyRangeTo duplican valores, fórmulas, índices de estilo y cargas útiles de texto enriquecido; CopyFrom duplica el contenido y la configuración de toda la hoja de cálculo (incluidas celdas combinadas, configuración de página, estado de vista, autofiltros, etc.); estos tres solo copian el contenido de las celdas, así que los comentarios se quedan atrás, y CloneRangeTo o Sheets.AddCopy lleva los comentarios con sus runs de texto enriquecido; MoveRange omite la superposición con el destino; SortRange ordena filas completas dentro de un rectángulo por una o más columnas clave absolutas; ClearRange elimina celdas; ClearRangeValues limpia valores y fórmulas conservando los índices de estilo
Range / RCRange / UsedRangeDevuelven envoltorios TXLSXRange propiedad de la hoja para referencias A1, coordenadas numéricas de base 1 o la clausura poblada 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 ofrecen valores por lotes, fórmulas, índices de estilo, formatos numéricos, bordes, flags de protección, autofit, combinación, desfase, cambio de tamaño, ordenación multiclave, estilos de celda integrados, copiar/mover y asistentes de inserción/eliminación de filas o columnas completas
EntireRow / EntireColumnDevuelven rangos de fila completa o columna completa para el índice indicado, aptos para operaciones estructurales o propagación de estilos
MergeCells(R1, C1, R2, C2)Agrega un rectángulo combinado y devuelve el índice de la nueva entrada. Las coordenadas son de base 1, inclusivas en ambos extremos. 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 combinar a lo ancho de Excel
FillMergedCellValuesCopia el valor del ancla de cada rango combinado en cada celda miembro cubierta, de modo que las hojas estilo informe se lean después como una cuadrícula plana. Las anclas vacías o nulas se omiten, así que las combinaciones prerellenadas conservan su propio contenido, y se devuelve el número de celdas rellenadas
FormControlsColección de controles de formulario de la hoja de cálculo (botones, casillas, botones de opción, cuadros combinados, cuadros de lista) creada por la familia de asistentes AddFormButton / AddFormCheckBox / AddFormRadioButton / AddFormComboBox / AddFormListBox . Cada entrada expone el rectángulo de anclaje, la celda vinculada y el tipo de control
AddHyperlink overloadsAgrega un hipervínculo de URL externa a una sola celda. Display y Tooltip son opcionales. Equivale a Hyperlinks.Add(...)
AddComment overloadsAgrega un comentario a una sola celda. Author es opcional. Equivale a Comments.Add(...)
ColWidth[Col]Ancho de columna en unidades de Excel (la misma escala que usa el diálogo de ancho de columna de Excel). Leer una columna sin establece devuelve 0; asignar un valor establece el ancho de esa columna de base 1. SaveAs emite una entrada <col> por columna personalizada; Open reproduce el bloque <cols> de vuelta en el mapa
RowHeight[Row]Alto de fila en puntos (la misma escala que usa el diálogo de alto de fila de Excel). Leer una fila sin establecer devuelve 0; asignar un valor establece el alto de esa fila de base 1. SaveAs escribe los atributos ht y customHeight="1" en cada <row> con alto personalizado, incluso en filas que solo llevan alto sin datos de celda
SetColWidth / SetRowHeightDefinidores directos usados por las propiedades indexadas de arriba. Se ofrecen como métodos con nombre para los llamadores que prefieren no usar la sintaxis de propiedades
HasColWidth / HasRowHeightDevuelve True cuando la hoja de cálculo tiene un ancho o alto personalizado para el índice dado. Úselo para distinguir "sin establecer" de un 0 deliberado
ClearColWidths / ClearRowHeightsDevuelve cada ancho o alto personalizado al valor predeterminado de Excel
ClearRowHidden / ClearColHidden / ClearRowCollapsed / ClearColCollapsedDevuelve todas las anulaciones de ocultación/contracción de filas o columnas al estado predeterminado visible y expandido
ImagesColección de imágenes. Use AddImage / AddImageFromFile como puntos de entrada de conveniencia. Consulte TXLSXImage / TXLSXImages
HeaderFooterImagesRanuras con tipos para imágenes de encabezado y pie de página impares, pares y de primera página, con propiedades independientes de posición, tamaño, margen, formato, datos y título. Consulte TXLSXHeaderFooterImage / TXLSXHeaderFooterImages
ConditionalFormatsReglas de formato condicional de esta hoja de cálculo. Use AddConditionalFormat como entrada de conveniencia. Consulte TXLSXConditionalFormat / TXLSXConditionalFormats
DataValidationsReglas de validación de datos de esta hoja de cálculo. Use AddDataValidation / AddListValidation como entradas de conveniencia. Consulte TXLSXDataValidation / TXLSXDataValidations
IgnoredErrorsMetadatos con tipos de supresión de errores de la hoja de cálculo. Cada TXLSXIgnoredError combina un SqRef multiárea separado por espacios en blanco con las flags 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 / AddImageFromFileAgrega una imagen anclada a una celda. AddImage recibe los bytes crudos más un TXLSXImageFormat; AddImageFromFile lee el archivo e infiere el formato de su extensión. Equivale a Images.Add en la colección
AddConditionalFormat overloadsAgrega una regla de formato condicional cellIs. Equivale a ConditionalFormats.Add(...)
AddCondFormatExpression / text / rank / average / duplicate / blank / error helpersAgrega reglas de formato condicional especializadas para fórmulas, coincidencia de texto, rangos superiores/inferiores, valores sobre/debajo del promedio, 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 validationsAgrega validaciones de números completos con soporte de rango o criterios
ProtectedRangesColección de rangos de celdas protegidos que requieren autenticación por contraseña en la hoja
RawWorksheetExtsExpone los datos crudos de la lista de extensiones de la hoja de cálculo para inyección directa de XML
SparklineGroups / AddSparklineGroupGestiona minigráficos sparkline en línea dentro de las celdas. AddSparklineGroup crea un grupo que referencia un rango de datos
ThreadedComments / AddThreadedComment / AddThreadedReplyDa soporte a conversaciones modernas de comentarios encadenados (respuestas). AddThreadedComment crea una conversación de comentario encadenado de nivel superior, y AddThreadedReply agrega una respuesta
AddAreaChart / AddBarChart / AddChartFromRange / AddColumnChart / AddLineChart / AddPieChartAtajos de gráficos de Excel. AddChartFromRange crea un gráfico anclado directamente a partir de datos de celdas
GetSheetProtectOption / SetSheetProtectOptionObtiene o establece flags específicos de permisos de protección de hoja de forma programática
PasteFromClipboardPega el contenido del portapapeles directamente a partir de las coordenadas indicadas
AlignWithMarginsEspecifica si los márgenes de página se alinean con el contenido de la hoja de cálculo
CodeNameEspecifica el nombre de código VBA de la hoja
ConsolidateXmlExpone los datos XML consolidados crudos
DifferentFirstHabilita un encabezado/pie de página independiente para la primera página
DifferentOddEvenHabilita encabezados/pies de página independientes para páginas impares/pares
EvenFooterText / EvenHeaderTextCadenas de texto para los encabezados y pies de página de las páginas pares
FirstFooterText / FirstHeaderTextCadenas de texto para los encabezados y pies de página de la primera página
FirstPageNumberNúmero de la primera página impresa
GridColorColor de las líneas de cuadrícula de la hoja
HorizontalDpi / VerticalDpiResoluciones de DPI de impresión para los ejes horizontal y vertical
OutlineLevelCol / OutlineLevelRowNivel de esquema predeterminado para columnas y filas
PaneStateEstado de desplazamiento inmovilizado de los paneles
PhoneticAlignment / PhoneticFontId / PhoneticTypeAlineación, índice de fuente y tipo fonético del texto ruby fonético CJK
PrintErrorsComportamiento de impresión de errores de celda
ScaleWithDocEscala encabezados/pies con la escala del documento
ScenariosColección con tipos del Administrador de escenarios What-If. Cada escenario posee de una a 32 celdas de entrada y soporta su nombre, estados de bloqueo y ocultación, metadatos de usuario y comentario, valores almacenados, formatos numéricos y flags de eliminado o deshecho CurrentIndex, ShownIndexy SqRef exponen el estado del Administrador de escenarios a nivel de hoja de cálculo
ScenariosXmlRespaldo heredado de XML interno crudo, usado solo cuando la colección con tipos Scenarios está vacía
SheetProtectAlgorithmName / SheetProtectHashValue / SheetProtectSaltValue / SheetProtectSpinCountPropiedades criptográficas para los hashes de contraseña de protección de hoja modernos
ShowFormulasMuestra las fórmulas en lugar de los valores
ShowOutlineSymbolsMuestra los símbolos de los grupos de esquema
SortState / SortStateXmlCriterios de ordenación con tipos y contenido XML de ordenación textual
SummaryBelow / SummaryRightPosición de la fila y columna de resumen del esquema
UseFirstPageNumberUsa un inicio de numeración de páginas explícito
UsePrinterDefaultsUsa la configuración DEVMODE predeterminada de la impresora
ZeroHeightOculta de forma predeterminada las filas recién insertadas
ZoomNormal / ZoomPageLayout / ZoomSheetLayoutValores de nivel de zoom para las vistas normal, de diseño de página y de vista previa de saltos
AddWordArtAgrega un control de forma de texto WordArt a la hoja de cálculo
BuildRowMajorCellOrderOptimiza el almacenamiento de celdas secuencialmente para la iteración por filas
ClearRawDrawingAnchorsLimpia todas las anclas XML crudas de formas de dibujo sin mapear
CreateConditionalFormatEvaluatorInstancia un motor de utilidades de evaluación de formato condicional
RawDrawingAnchor / RawDrawingAnchorCount / AddRawDrawingAnchorGestiona anclas XML crudas de formas de dibujo sin mapear AddRawDrawingAnchor agrega un bloque <xdr:...Anchor> completo preservado textualmente para el round-trip y devuelve el nuevo TXLSXDrawingObject
BringToFront / SendToBack / BringForward / SendBackwardReordena 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
SaveAsPDFExporta la hoja de cálculo a un archivo o flujo PDF
TryGetOutlineNode / SetOutlineNodeCollapsed / SetOutlineDisplayLevelConsulta o cambia de forma idempotente los nodos de resumen de filas y columnas según la dirección, a través del modelo compartido de esquema disperso; consulte Geometría de esquema dispersa
ToggleColGrouped / ToggleRowGroupedEnvoltorios de compatibilidad que aceptan la primera columna o fila de detalle y conmutan su nodo de resumen resuelto

Ediciones de reglas de eje completo y copias de rangos

Desde 2.384.77, las áreas objetivo de formato condicional y de validación de datos aceptan filas y columnas completas durante las ediciones estructurales y la clonación de dependencias; las ediciones normalizan las áreas válidas, retienen las extensiones completas de la cuadrícula y descartan los objetivos cuyas filas o columnas se eliminan
Las copias de celdas de fila completa, de columna completa y de hoja completa visitan las celdas almacenadas, conservan la limpieza dispersa del destino y capturan el contenido del origen antes de limpiar un destino que se solapa; copiar un rango en blanco de eje completo no materializa sus coordenadas vacías
Las copias entre libros siguen remapeando el formato y el texto enriquecido por valor, y las copias de matrices CSE completas frente a parciales conservan sus contratos de fórmulas existentes
Desde 2.384.78, las copias de rangos de celdas también capturan las superposiciones de estilo virtuales que se intersectan antes de la mutación, recortan las superposiciones explícitas del destino al rectángulo copiado y remapean cada parte de formato copiada entre libros, incluidos los restablecimientos explícitos al índice cero
Los valores predeterminados de destino de eje completo permanecen compactos y se enmascaran dentro del rectángulo copiado antes de aplicar las capas del origen; copiar un origen en blanco limpia el formato de superposición explícito previo dentro de ese rectángulo, conserva el formato fuera de él y no crea una celda por cada coordenada cubierta
Las reglas condicionales y de validación clonadas exigen que todas las áreas objetivo queden contenidas en el rectángulo de origen; las reglas que solo se intersectan con él se omiten, y un destino que se extiende más allá de la cuadrícula de la hoja se rechaza antes de copiar
Los estilos de blancos repetidos finitos importados de ODS aportan ambos extremos al rango usado; las superposiciones de estilo predeterminado de fila completa, de columna completa y de hoja completa no lo extienden solo porque cubran coordenadas vacías

Ejemplo

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;
    

Ver también