Räknar upp de inlästa cellerna i ett klassiskt XLS-kalkylblad och anropar en applikations-callback för varje cell
Syntax
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;
Anmärkningar
ForEachCell går bara igenom celler som finns i den inlästa kalkylbladsmodellen. Den genomsöker inte alla tänkbara rader och kolumner i bladet
Cells are visited in row-major order. SheetIndex, Row, and Col are 1-based public coordinates. Value is the current cell value. Formula innehåller formeltexten för formelceller och är tom för vanliga värdeceller
Set Cancel to True i callbacken för att avbryta genomsökningen i förtid. Returvärdet är antalet callbacks som gjordes
Exempel
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);
See Also