HotXLS-dokumentasjon

CreateLoadedCellCursor metode

Oppretter en trekkmarkør over de lagrede cellene i en innlastet Classic XLS-arbeidsbok, med et valg for å ta med uavhengig stiledde tomceller

Syntaks

function CreateLoadedCellCursor: IXLSLoadedCellCursor; overload;
function CreateLoadedCellCursor(
  AIncludeStoredBlanks: Boolean): IXLSLoadedCellCursor; overload;

Traverseringsrekkefølge og kostnad

Markøren går gjennom arkene i samlingsrekkefølge, deretter cellene etter stigende rad og kolonne

SheetIndex, Row og Col er offentlige koordinater som starter på én

Traverseringen følger tildelte Classic sparse-lagringsgrener direkte, slik at markørtilstanden forblir konstant og ikke tildeler tabeller dimensjonert etter arkenes rad- eller kolonnegrenser

Overbelastningen uten parametere hopper over tomceller og bevarer den eksisterende kontrakten for traversering av verdier og formler

Send True for å ta med lagrede tomceller hvis celle-XF avviker fra det arvede rad-, kolonne- eller arkformatet

Arvet formatering alene materialiserer eller avgir ingen tom koordinat

Felter i øyeblikksbildet

FeltBetydning
SheetIndex / SheetNameIdentiteten til arket som eier cellen, ved fangsttidspunktet
Row / ColCellekoordinater som starter på én
StyleIndexClassic XF-stilindeks
Kind (TXLSLoadedCellKind)xlckText, xlckNumber, xlckDateTime, xlckBoolean, xlckFormula, or xlckBlank
ValueEid Variant-verdi fanget opp for gjeldende celle
FormulaFormeltekst for formelceller, ellers en tom streng

Strenger og Variants i TXLSLoadedCellSnapshot er eide verdier og eksponerer ikke interne cellobjekter

For formelceller følger Value den normale verditilgangsatferden i Classic-arbeidsboken, inkludert beregning når det er nødvendig

For xlckBlank er Value Unassigned, Formula er tom, og StyleIndex identifiserer den lagrede celle-XF-en

Tilstand og ugyldiggjøring

State (type TXLSLoadedCellCursorState) er xlccBeforeFirst frem til det første vellykkede MoveNext, xlccActive mens Current er tilgjengelig, og xlccEof etter at traverseringen er fullført

Å lese Current før den første cellen eller etter EOF utløser EXLSLoadedCellCursorState

Å opprette eller slette lagrede celler, legge til, slette eller flytte ark, eller erstatte arbeidsbokmodellen ugyldiggjør markøren

Det neste MoveNext- eller Current-kallet utløser da EXLSLoadedCellCursorInvalidated

Å endre verdien, formelen eller formatet i en eksisterende celle ugyldiggjør ikke markøren, og et allerede fanget øyeblikksbilde forblir uendret

Eksempel

Cursor := Workbook.CreateLoadedCellCursor;
while Cursor.MoveNext do
begin
  Cell := Cursor.Current;
  Memo1.Lines.Add(Format('%s!R%dC%d = %s',
    [Cell.SheetName, Cell.Row, Cell.Col, VarToStr(Cell.Value)]));
end;

Se også