Документація HotXLS

Метод ForEachCell

Перелічує завантажені комірки в класичному аркуші XLS та викликає зворотний виклик застосунку для кожної комірки

Синтаксис

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;

Примітки

ForEachCell обходить лише комірки, що існують у завантаженій моделі аркуша. Не сканує кожен можливий рядок і стовпець аркуша
Комірки відвідуються в порядку рядків. SheetIndex, Row та Col — публічні координати з відліком від 1. Value — поточне значення комірки. Formula містить текст формули для формульних комірок та порожній для звичайних комірок зі значеннями
Встановіть Cancel на True у зворотному виклику для дострокового зупинення сканування. Значення, що повертається — кількість зроблених зворотних викликів

Приклад

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);

Дивіться також