Zapisuje tablicę variant lub danych TStrings do prostokątnego zakresu komórek zaczynając od podanej komórki
Składnia
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;
Uwagi
procedure WriteCells(ARow, ACol: Integer; AData: Variant); overload;
procedure WriteCells(ARow, ACol: Integer; AData: TStrings); overload;
Warianty 1D (wektory) zapisują jeden wiersz lub kolumnę. Warianty 2D zapisują prostokątne zakresy. Dane TStrings są zapisywane jako jednolita kolumna zaczynając od wskazanej komórki. Typy danych są wykrywane automatycznie: liczby są przechowywane jako Double, ciągi jako tekst. Dane variant nie aktualizują buforowanych wartości. Wymagane jest wywołanie Recalc aby zaktualizować buforowane wartości komórek zawierających formuły
Przykład
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);
Zobacz też
Ten przykład zapisuje tablicę 2D danych do komórek A1:B3