Enumera las celdas cargadas en una hoja de trabajo XLS clasica y llama a un callback de aplicacion 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
ForEachCell recorre solo las celdas que existen en el modelo de hoja de trabajo cargado. No explora todas las filas y columnas posibles
Las celdas se visitan en orden de fila mayor. SheetIndex, Row y Col son coordenadas publicas de base 1. Value es el valor de celda actual. Formula contiene el texto de la formula para celdas de formula y esta vacio para celdas de valor ordinario
Establezca Cancel en True en el callback para detener el recorrido anticipadamente. El valor de retorno es el numero de callbacks realizados
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);
Vease tambien