Dokumentacija HotXLS

CreateLoadedCellCursor metoda

Ustvari vlečni kazalec nad shranjenimi celicami v naloženem klasičnem delovnem zvezku XLS, z možnostjo vključitve samostojno oblikovanih praznih celic

Skladnja

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

Vrstni red prehoda in stroški

Kazalec obišče delovne liste v vrstnem redu zbirke, nato pa celice po naraščajoči vrstici in stolpcu

SheetIndex, Row in Col so javne koordinate s številčenjem od 1

Prehod sledi neposredno dodeljenim vejam klasične redke shrambe, zato stanje kazalca ostane konstantno in ne dodeljuje tabel, velikih kot so meje vrstic ali stolpcev delovnega lista

Preobtežitev brez parametrov izpusti prazne celice in ohrani obstoječo pogodbo o prehodu po vrednostih in formulah

Posredujte True, če želite vključiti shranjene prazne celice, katerih celični XF se razlikuje od podedovane oblike vrstice, stolpca ali delovnega lista

Samo podedovano oblikovanje ne ustvari in ne izda prazne koordinate

Polja posnetka

PoljePomen
SheetIndex / SheetNameIdentiteta lastniškega delovnega lista v trenutku zajemanja
Row / ColKoordinate celice s številčenjem od 1
StyleIndexKlasični indeks stila XF
KindxlckText, xlckNumber, xlckDateTime, xlckBoolean, xlckFormula ali xlckBlank
ValueLastniška vrednost Variant, zajeta za trenutno celico
FormulaBesedilo formule za formulske celice, sicer prazen niz

Nizi in Variant vrednosti v TXLSLoadedCellSnapshot so lastniške vrednosti in ne razkrijejo notranjih objektov celic

Pri formulskih celicah Value sledi običajni semantiki dostopa do vrednosti klasičnega delovnega zvezka, vključno z izračunom, ko je ta potreben

Za xlckBlank je Value enak Unassigned, Formula je prazen, StyleIndex pa opredeli shranjeni celični XF

Stanje in razveljavitev

State je xlccBeforeFirst do prvega uspešnega MoveNext, xlccActive, dokler je Current na voljo, in xlccEof po zaključenem prehodu

Branje Current pred prvo celico ali po EOF sproži EXLSLoadedCellCursorState

Ustvarjanje ali brisanje shranjenih celic, dodajanje, brisanje ali premikanje delovnih listov ali zamenjava modela delovnega zvezka razveljavi kazalec

Naslednji klic MoveNext ali Current nato sproži EXLSLoadedCellCursorInvalidated

Spreminjanje vrednosti, formule ali oblike obstoječe celice ne razveljavi kazalca, že zajet posnetek pa ostane nespremenjen

Primer

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;

Glej tudi