Documentación de HotXLS

Método ForEachCell

Enumera las celdas cargadas en una hoja de cálculo XLS clásica y llama a un callback de la aplicación para cada celda

Sintaxis

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;

Observaciones

function ForEachCell(ACallback: TXLSForEachCellEvent): Integer;
ForEachCell recorre solo las celdas que existen en el modelo de hoja de cálculo cargado. No escanea cada fila y columna posible en la hoja
Las celdas se visitan en orden de fila mayor. SheetIndex, Row y Col son coordenadas públicas basadas en 1. Value es el valor actual de la celda. Formula contiene el texto de la fórmula para las celdas de fórmulas y está vacío para las celdas que no son de fórmulas

Ejemplo

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

Véase también

Establezca Cancel en True en el callback para detener el escaneo anticipadamente. El valor de retorno es el número de callbacks realizados