Completează un interval al foii de lucru XLS clasice apelând codul aplicației pentru valoarea fiecărei celule
Sintaxă
type
TXLSCellWriteEvent = procedure(
Sender: TObject;
SheetIndex, Row, Col: Integer;
var Value: Variant;
var Skip: Boolean;
var Cancel: Boolean) of object;
function WriteCells(ARange: WideString; Callback: TXLSCellWriteEvent): Integer; overload;
function WriteCells(ARow1, ACol1, ARow2, ACol2: Integer; Callback: TXLSCellWriteEvent): Integer; overload;
Observații
Supraîncărcarea cu șir acceptă un interval în stil A1 cum ar fi A1:C100. Supraîncărcarea numerică utilizează indexuri de rând și coloană cu baza 1. Intervalele sunt normalizate când rândul sau coloana de start este mai mare decât cea de final
Celulele sunt solicitate în ordine rând-major. Setați Value în callback pentru a scrie celula curentă. Setați Skip la True pentru a lăsa celula curentă nemodificată. Setați Cancel la True pentru a opri umplerea anticipat
Această metodă scrie în modelul foii de lucru încărcate. Este un ajutor compact de scriere bazat pe callback, nu un mod de salvare în flux de fișiere
Exemplu
procedure TForm1.WriteCell(Sender: TObject; SheetIndex, Row, Col: Integer;
var Value: Variant; var Skip: Boolean; var Cancel: Boolean);
begin
if Col = 3 then
begin
Skip := True;
Exit;
end;
Value := Format('R%dC%d', [Row, Col]);
if Row >= 1000 then
Cancel := True;
end;
Written := Workbook.Sheets[1].WriteCells('A1:D2000', WriteCell);
Vezi și