Documentație HotXLS

Metoda ForEachCell

Enumeră celulele încărcate dintr-o foaie de lucru XLS clasică și apelează un callback de aplicație pentru fiecare celulă

Sintaxă

type
  TXLSCellReadEvent = procedure(
    Sender: TObject;
    SheetIndex, Row, Col: Integer;
    const Value: Variant;
    const Formula: WideString;
    var Cancel: Boolean) of object;

function ForEachCell(Callback: TXLSCellReadEvent): Integer;

Observații

ForEachCell parcurge doar celulele care există în modelul foii de lucru încărcate. Nu scanează fiecare rând și coloană posibilă din foaie
Celulele sunt vizitate în ordine rând-major. SheetIndex, Row și Col sunt coordonate publice cu baza 1. Value este valoarea curentă a celulei
Setați Cancel la True în callback pentru a opri scanarea anticipat. Valoarea returnată este numărul de callback-uri efectuate

Exemplu

procedure TForm1.ReadCell(Sender: TObject; SheetIndex, Row, Col: Integer;
  const Value: Variant; const Formula: WideString;
  var Cancel: Boolean);
begin
  Memo1.Lines.Add(Format('%d:%d = %s', [Row, Col, VarToStr(Value)]));
  if Row >= 1000 then
    Cancel := True;
end;

Visited := Workbook.Sheets[1].ForEachCell(ReadCell);

Vezi și