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
| Polje | Pomen |
|---|---|
SheetIndex / SheetName | Identiteta lastniškega delovnega lista v trenutku zajemanja |
Row / Col | Koordinate celice s številčenjem od 1 |
StyleIndex | Klasični indeks stila XF |
Kind | xlckText, xlckNumber, xlckDateTime, xlckBoolean, xlckFormula ali xlckBlank |
Value | Lastniška vrednost Variant, zajeta za trenutno celico |
Formula | Besedilo 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;