uses System.Variants;
function VarIsNull(const V: Variant): Boolean;
begin
Result := FindVarData(V)^.VType = varNull;
end;
procedure TDBGrid2ExcelSample.Button2Click(Sender: TObject);
var
od: TOpenDialog;
wb: IXLSWorkbook;
ws: IXLSWorksheet;
i,irow: integer;
v,v2,v3,v4,v5,v6,v7: Variant;
begin
od := TOpenDialog.Create(nil);
od.Filter := 'xls|*.xls|xlsx|*.xlsx';
wb := TXLSWorkbook.Create;
if od.Execute then
begin
wb.Open(od.FileName);
ws := wb.WorkSheets[1];
if ws.UsedRange.Rows.Count = 0 then
Exit;
// 商品名称 条码 进价 售价 单位
text:=IntToStr(ws.UsedRange.LastRow);
for irow := 2 to ws.UsedRange.LastRow do // 遍历行
begin
for i := 1 to ws.UsedRange.LastCol do //遍历列
begin
v := ws.UsedRange.Cells[irow, i].Value;
if not VarIsNull(v) then
Memo1.Lines.Add(v);
end;
end;
end;
wb.Close;
od.Free;
end;
Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号
执行时间: 0.046996116638184 seconds