Énumère les cellules chargées dans une feuille de calcul XLS classique et appelle un rappel applicatif pour chaque cellule
Syntaxe
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;
Remarques
ForEachCell parcourt uniquement les cellules qui existent dans le modèle de feuille de calcul chargé. Il ne scanne pas chaque ligne et colonne possibles de la feuille
Les cellules sont visitées en ordre ligne-majorité. SheetIndex, Row et Col sont des coordonnées publiques à base 1. Value est la valeur actuelle de la cellule. Formula contient le texte de formule pour les cellules de formule et est vide pour les cellules de valeur ordinaires
Définissez Cancel à True dans le rappel pour arrêter le scan prématurément. La valeur de retour est le nombre d'appels de rappel effectués
Exemple
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);
Voir aussi