HotXLS-dokumentation

WriteCells metode

Udfylder et klassisk XLS-regnearksomraade ved at kalde applikationskode for hver cellevaerdi

Syntaks

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;

Bemaerkninger

Strengoverbelastningen accepterer et A1-stil-omraade som f.eks. A1:C100. Den numeriske overbelastning bruger 1-baserede raekke- og kolonneindekser. Omraader normaliseres, naar startraekken eller -kolonnen er stoerre end slutraekken eller -kolonnen
Celler anmodes om i raekkeraekkefoelge. Saet Value i callbacket for at skrive den aktuelle celle. Saet Skip til True for at efterlade den aktuelle celle uaendret. Saet Cancel til True for at stoppe efter det aktuelle callback. Returvaerdien er antallet af skrevne celler
Denne metode skriver til den indlaeste regnearkmodel. Det er en kompakt callback-baseret skrivehjaelper, ikke en fil-streaming-gemtilstand

Eksempel

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);

Se ogsaa