HotXLS-dokumentation

Yderligere klassiske XLS-API-medlemmer

Denne side dækker offentlige klassiske XLS-API-medlemmer, der tilhører lxHandle, lxDataToXLS og lxGridToXLS

IXLSWorkbook-beregningsegenskaber

property CalculationMode: LongWord;
property FormulaArrayMemoryLimit: Int64;
property EnableIteration: Boolean;
property MaxIterations: LongWord;
property MaxIterationChange: Double;
property RecalcOnSave: Boolean;
property UseFullPrecision: Boolean;
      
CalculationMode Styrer projektmappens beregningstilstand, der gemmes med filen
FormulaArrayMemoryLimit Begrænser den nyttelast, som genererede formelarrays såsom MUNIT allokerer, som standard 64 MiB, og klemmer værdier under ét Double-element
EnableIteration Aktiverer iterativ beregning for cirkulære formler
MaxIterations Maksimalt antal Gauss-Seidel-gennemløb for hver stærkt sammenhængende komponent af cirkulære referencer
MaxIterationChange Maksimalt accepteret numerisk delta, før en komponent med cirkulære referencer stopper iterationen
RecalcOnSave Anmoder om genberegning af projektmappen, når Excel gemmer filen
UseFullPrecision Bevarer den fulde formelpræcision; når den er deaktiveret, afrundes caches for formler og What-If-datatabeller til deres effektive viste numeriske præcision, før afhængige læser dem

Validering af formelindtastning

property IXLSWorkbook.FormulaEntryPolicy: TXLSFormulaEntryPolicy;
function TXLSWorksheet.ValidateFormulaEntry(Row, Col: Integer;
  const Formula: WideString): TXLSFormulaEntryValidationResult;
      
Kontraktklassen for den fælles validering klassificerer tom input, ukendte funktioner, ukendte navne, syntaksfejl, ugyldige koordinater og formler, der ikke kan repræsenteres af det klassiske XLS-mål, uden at ændre regnearkets tilstand; se Politik for validering af formelindtastning

IXLSWorkbook-renderkalibrering

property RenderCalibration: TXLSRenderCalibration;
function CaptureRenderCalibration: TXLSRenderCalibration;
procedure ResetRenderCalibration;
function CreateRenderGeometry(ABackend: TXLSRenderGeometryBackend;
  ACacheCapacity: Integer = 4096): IXLSRenderGeometry;
      
Tildeling af hele posten validerer alle seks felter, før projektmappen ændres, CaptureRenderCalibration returnerer et uafhængigt værdisnapshot til én målings- eller eksportoperation, og ResetRenderCalibration gendanner standardværdierne 1/1/1/1/100/96
Denne konfiguration findes kun ved kørsel, serialiseres ikke i XLS-filen og ændrer ikke regnearkenes rækkehøjder eller kolonnebredder
CreateRenderGeometry kopierer den aktuelle kalibrering ind i en tjeneste, der ejes af operationen, og binder dens cache-identitet til projektmappens aktuelle generation og den valgte backend; senere kalibreringsændringer i projektmappen kan ikke ændre en eksisterende tjeneste
Range-AutoFit og hvert kald til TXLSPaginationModel.Build indfanger projektmappens kalibrering én gang; AutoFit er den eneste forbruger, der bevidst skriver de tilpassede dimensioner, mens pagineringen bevarer alle lagrede rækkehøjder og kolonnebredder

IXLSWorkbook-dokumentegenskaber

property Title: WideString;
property Subject: WideString;
property Author: WideString;
property Keywords: WideString;
property Comments: WideString;
property Company: WideString;
property Manager: WideString;
      
Disse egenskaber læser og skriver projektmappens sammenfatningsfelter, der gemmes med den klassiske XLS-fil

IXLSWorkbook-metoden Close

function Close: Integer;
      
Lukker projektmappeobjektet og frigiver indhold, der ejes af projektmappen i den klassiske XLS-objektmodel

IXLSWorkbook-egenskaber til indlæsning af kun metadata

property MetadataOnly: Boolean;
property SelectedSheets: TStringList;
property IncompleteLoad: Boolean;
      
MetadataOnly Sættes før Open, læses kun projektmappens metadata og arkbeskrivelser, og celledata springes over
SelectedSheets Liste over arkenavne, der skal indlæses, når projektmappen åbnes; en tom liste indlæser alle ark
IncompleteLoad True efter Open, når celledata blev sprunget over, fordi MetadataOnly eller SelectedSheets blev brugt
En projektmappe, der er åbnet med MetadataOnly eller en ikke-tom SelectedSheets-liste, kan ikke gemmes; Save udløser en fejl, indtil projektmappen genåbnes uden disse indstillinger

TXLSColumnInfo-kollapsetilstand

property TXLSWorksheet._ColumnInfo: TXLSColumnInfoList;
property TXLSColumnInfo.Collapsed: Boolean;
property TXLSRowInfo.Collapsed: Boolean;
property TXLSColumnInfoList.Collapsed[Index: Integer]: Boolean;
      
Collapsed eksponerer BIFF-markøren for kolonnedisposition uafhængigt af Hidden og OutlineLevel. Listeindekset er et 0-baseret klassisk XLS-kolonneindeks. Manglende kolonner læses som False, og tildeling af False til en manglende kolonne allokerer ikke metadata. Kopier af kolonneformater, kopier af regneark og gem-og-genåbn-cyklusser bevarer markøren
De underliggende lageradgange er offentlige til lavniveaueftersyn af projektmappen. TXLSRowInfo rapporterer MinCol og MaxCol (det dækkede 1-baserede kolonneinterval), CustomHeight og CustomFormat (om der er gemt en eksplicit højde eller et XF-indeks) samt XFIndexSet; TXLSColumnInfo.isEqual sammenligner to kolonnemetadata-poster felt for felt
TXLSColumnInfoList eksponerer ColCount, MinCol, MaxCol, StdWidth og MaxOutlineLevel til grænse- og standardbredde-diagnostik, CalcMaxOutLineLevel beregner det cachelagrede maksimale dispositionsniveau igen efter direkte metadataredigeringer, CopyColFormat kloner en kolonnepost til et andet indeks, DeleteCol fjerner en post, og FindNextColToStore gennemgår lagrede poster til BIFF COLINFO-postskrivere og rapporterer det næste interval i out-parametrene MinCol / MaxCol

TXLSWorksheet-metoder til dispositionsnoder

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);
      
Disse metoder tilpasser klassiske række- og kolonnemetadata til den fælles sparsomme dispositionmodel, afleder den ønskede oversigtsnode ud fra dens Disposition-retning og anvender komprimerede skjult- og kollaps-ændringer uden at afprøve ubrugte regnearkskoordinater
ANodeIndex er den 1-baserede fysiske oversigtsrække eller -kolonne, ADisplayLevel følger den 1-baserede konvention for dispositionsknapper, og xocPreserve holder som standard indlejrede kollapsmarkører for underordnede noder uafhængige
Se Sparsom dispositiongeometri for nodefelter, underordnede tilstande, eksempler og kompleksitetsgarantier

TXLSWorksheet-metoder til ruder og udskriftstitler

function ThawPanes(Y, X: Single; RowTop, ColLeft: Word): Integer;
function SplitPanes(Width, Height: Single): Integer;
function UnsplitPanes: Integer;
function GetSelectedAreas(APane: TXLSPanePosition; out ActiveAreaIndex: Integer): TXLSSelectedAreas;
function SelectAreas(APane: TXLSPanePosition; const Areas: array of WideString; ActiveAreaIndex: Integer = 0): Boolean;
function TryGetWindowScroll(APane: TXLSPanePosition; out ARow, ACol: Integer): Boolean;
function ScrollWindow(APane: TXLSPanePosition; ARow, ACol: Integer): Boolean;
function RepeatRows(FirstRow, LastRow: Word): Integer;
function RepeatColumns(FirstCol, LastCol: Word): Integer;
      
ThawPanes, SplitPanes og UnsplitPanes styrer tilstanden for opdelte ruder, mens RepeatRows og RepeatColumns angiver rækker eller kolonner til udskriftstitler for regnearket
GetSelectedAreas og SelectAreas-overloaden med ruden først leverer den fælles kontrakt for valg i logiske ruder, der er beskrevet i API til rudevalg i regneark
Sammenhængende BIFF-valgposter for én rude udgør én logisk gruppe, redigerede grupper skrives i portioner på højst 1369 områder, og kopier af regneark bevarer hver rudegruppe
Strukturelle redigeringer af hele rækker og hele kolonner kortlægger hver gyldig rudegruppe om, mens ordnede overlevende elementer og aktiv-område-identiteten bevares, med deterministiske efterfølger-, forgænger- og grænsecelle-fallbacks
Forkert formede eller modstridende valgposter forbliver uigennemsigtige, genafspilles byte for byte ved lagring og rapporterer xlsDiagnosticSelectionRecordInvalid i stedet for at eksponere delvist betruet typet tilstand
TryGetWindowScroll og ScrollWindow eksponerer den fælles 1-baserede scroll-kontrakt for fire ruder, som knytter den øvre og venstre akse til Window2 og den nedre og højre akse til Pane

TXLSWorksheet-metoder til typet datavalidering

function AddWholeNumberValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddDecimalValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddDateValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddTimeValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddTextLengthValidation(ARange: WideString; AOp: TXLSDvOperator; const AFormula1: WideString; const AFormula2: WideString = ''): TDataValidation;
function AddCustomValidation(ARange: WideString; const AFormula: WideString): TDataValidation;
      
Hver hjælpefunktion opretter en typet datavalideringsregel for ARange og returnerer den oprettede TDataValidation-instans, så indstillingerne for prompt, fejl og håndtering af tomme celler kan justeres

TXLSWorksheet pivot-table-medlemmer

property PivotTables: TXLSPivotTables;
function AddPivotTable(const SourceRangeA1: WideString; DestRow, DestCol: Integer; const Name: WideString): TXLSPivotTable;
function PivotSetDataFieldFormat(DataField: TXLSPivotDataField; const FormatStr: WideString): Word;
      
Brug AddPivotTable til at oprette en typet pivot-tabel ud fra et kildeområde, og brug derefter PivotTables og PivotSetDataFieldFormat til at inspicere eller formatere den genererede model. Se Klassisk XLS pivot-tabel-API

IXLSRange-medlemmer til matrixformler og grænser

function SetArrayFormula(const Formula: WideString): Integer;
function XFIndex: Integer;
property FirstRow: Word;
property LastRow: Word;
property FirstCol: Byte;
property LastCol: Byte;
      
SetArrayFormula tildeler en matrixformel til området. FirstRow, LastRow, FirstCol og LastCol eksponerer de lagrede 1-baserede områdegrænser, mens XFIndex returnerer den effektive klassiske XLS-formatindeks for området

IXLSRange-hjælpefunktioner til overførsel

procedure PasteFrom(SrcRange: TXLSRange; PasteMode: LongWord; CopyMode: Boolean);
procedure ShiftTo(Row: Word; Col: Byte);
procedure ExtendRange;
procedure ContractRange;
      
PasteFrom anvender celleindhold fra et andet klassisk XLS-område med den valgte indsætningstilstand. ShiftTo flytter et områdeobjekt, mens ExtendRange og ContractRange justerer den lagrede rektangel før områdeoperationer, der har brug for udvidede eller normaliserede grænser

IXLS-grænseflader for række- og kolonneområder

interface IXLSRowsRange = interface(IXLSRange)
  property Item[Row: Integer]: IXLSRowRange;
  property Hidden: OleVariant;
  property Count: LongWord;
  procedure AutoFit(Columns: Boolean = False);

interface IXLSRowRange = interface(IXLSRange)
  property Item[Col: Integer]: IXLSColRange;
  property Hidden: OleVariant;
  property Count: LongWord;
  procedure AutoFit(Columns: Boolean = False);

interface IXLSColsRange = interface(IXLSRange)
  property Item[Col: Integer]: IXLSColRange;
  property Hidden: OleVariant;
  property Count: LongWord;
  procedure AutoFit(Columns: Boolean = True);
  procedure Group(Rows: Boolean = False);
  procedure UnGroup(Rows: Boolean = False);
  property OutlineLevel: Integer;

interface IXLSColRange = interface(IXLSRange)
  property Item[Row: Integer]: IXLSRowRange;
  property Hidden: OleVariant;
  property Count: LongWord;
  procedure AutoFit(Columns: Boolean = True);
  procedure Group(Rows: Boolean = False);
  procedure UnGroup(Rows: Boolean = False);
  property OutlineLevel: Integer;
      
IXLSRowsRange, IXLSRowRange, IXLSColsRange og IXLSColRange returneres af IXLSRange.Rows, IXLSRange.Columns, IXLSRange.EntireRow og IXLSRange.EntireColumn. De bevarer den normale IXLSRange-redigeringsflade og tilføjer samtidig indekseret adgang til rækker eller kolonner, styring af skjult tilstand, antal, autotilpasning og oversigtsgruppering, hvor områdets retning understøtter det
property DisplayText: WideString;
      
DisplayText læser eller ændrer den synlige tekst, som Excel viser for et klassisk XLS-hyperlink, adskilt fra mål-adressen og skærmtipset

TXLSWorksheets-egenskaber til ID-tilknytning

property IndexByID[SheetID: Integer]: Integer;
property IDByName[SheetName: WideString]: Integer;
property NameByID[SheetID: Integer]: WideString;
      
Disse skrivebeskyttede opslags-egenskaber kortlægger mellem det interne regnearks-ID, det aktuelle regnearksindeks og det synlige regnearksnavn. De er nyttige, når man bevarer formler, definerede navne eller poster, der henviser til regneark med lagrede identifikatorer i stedet for den aktuelle fanerækkefølge

TXLSWorksheet-egenskaben SheetTypeRaw

property SheetTypeRaw: Byte;
      
SheetTypeRaw bevarer den rå klassiske XLS-BoundSheet8.dt-værdi under indlæsning og lagring af projektmapper, så makro-, VBA-, regnearks-, dialog- og andre arktype-poster kan rundtur uden at blive udjævnet til en standard regnearksfane

IXLSPageSetup-egenskaber til avanceret udskrivning

property PrintNotesAtEnd: Boolean;
property UseFirstPageNumber: Boolean;
property FirstPageNumber: Integer;
property PrintCellErrors: LongWord;
property PrintResolution: LongWord;
property PrintVResolution: LongWord;
property Copies: LongWord;
property HasSetupRecord: Boolean; read only
property PrinterSettingsInitialized: Boolean; read only
property PrinterDriverData: TBytes;
property HasPrinterDriverData: Boolean; read only
procedure ClearPrinterDriverData;
      
Disse egenskaber bevarer avancerede sideopsætningsvalg såsom kommentarer udskrevet til sidst, et brugerdefineret første sidenummer, gengivelse af udskrevne cellefejl, printeropløsning og antal kopier
HasSetupRecord rapporterer, om et indlæst klassisk XLS-regneark indeholder en BIFF Setup-post, mens PrinterSettingsInitialized rapporterer, om papirformat, skalering, orientering, opløsning og antal kopier er defineret af den post
Ved lagring af et urørt regneark bevares en manglende Setup-post, og en eksisterende post bevares byte for byte; ændring af et sideopsætningsfelt opretter posten efter behov, og ændring af et printerafhængigt felt initialiserer printerindstillingerne
PrinterDriverData læser eller erstatter den uigennemsigtige BIFF PLS-nyttelast fra printerdriveren, HasPrinterDriverData skelner en fraværende nyttelast, og ClearPrinterDriverData fjerner den uden at ændre de typede sideopsætningsfelter
Byte-arrays til getter og setter kopieres, så kaldere og kopier af regneark har uafhængigt ejerskab; Classic-nyttelaster skal indeholde det påkrævede to byte store reserverede præfiks og må ikke overstige 1 MiB
SaveXLSWorkbookAsXLSX overfører typede sideopsætningsværdier og den uigennemsigtige printerdriver-nyttelast uafhængigt ind i XLSX-modellen; de typede standardfelter forbliver autoritative, når private driverbyte indeholder duplikerede printerstandarder

IXLSFont-egenskaber for tegnsæt

property CharSet: Byte;
property Family: Byte;
      
CharSet og Family eksponerer de klassiske XLS-skrifttype-tegnsæt- og familiebyte for kaldere, der har brug for at bevare lokalespecifik skrifttypemetadata

TDataToXLS- og TGridToXLS-metoden Abort

procedure TDataToXLS.Abort;
procedure TGridToXLS.Abort;
      
Kald Abort fra eksportbegivenhedshandlere, når en kørende data- eller gittereksport skal stoppe før fuldførelse

Klassiske XLS-referencehjælpefunktioner

function GetCellRef(Cell: String; var Row, Col: Word): Integer;
function GetCellRange(CellRange: String; var StartRow, StartCol, EndRow, EndCol: Word): Integer;
function EncodeCellRef(Row, Col: Word): String;
function EncodeCellRange(StartRow, StartCol, EndRow, EndCol: Word): String;
function Width2Excel(Value: Single): Word;
function Excel2Width(Value: Word): Single;
function Height2Excel(Value: Single): Word;
function Excel2Height(Value: Word): Single;
function ColIndexToColName(Index: Integer): String;
function ColNameToColIndex(Name: String): Integer;
      
Disse hjælpefunktioner konverterer klassiske A1-reference, områder, kolonneetiketter, række- eller kolonnedimensioner og Excel-lagringsenheder, der bruges af den klassiske XLS-objektmodel