Tài liệu HotXLS

Phương thức ForEachCell

Liệt kê các ô đã tải trong worksheet XLS truyền thống và gọi callback ứng dụng cho mỗi ô

Cú pháp

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;

Ghi chú

ForEachCell chỉ đi qua các ô tồn tại trong mô hình worksheet đã tải. Nó không quét mọi hàng và cột có thể có trong sheet
Các ô được duyệt theo thứ tự hàng. SheetIndex, RowCol là tọa độ công khai theo chỉ số 1. Value là giá trị ô hiện tại. Formula chứa văn bản công thức cho các ô công thức và rỗng cho các ô giá trị thông thường
Đặt Cancel thành True trong callback để dừng quét sớm. Giá trị trả về là số lần callback được gọi

Ví dụ

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

Xem thêm