procedure TDataEditDrFrm.btn8Click(Sender: TObject); var excelx,excely:string; ExcelApp:Variant; workBook:OleVariant; excelRowCount,excelColumnCount:longint; i,j,row,row1:integer; begin row1:=1; pb1.Min:=0; dlgOpen1.Filter:='Excel文件|*.xls|*.xlsx'; if dlgOpen1.Execute then begin try ExcelApp:=CreateOleObject('Excel.Application'); workBook:=ExcelApp.WorkBooks.open(dlgOpen1.FileName); ExcelApp.visible:=False; excelRowCount:=ExcelApp.ActiveSheet.UsedRange.Rows.count; row:=1; pb1.Max:=excelRowCount; for i := 1 to excelRowCount do begin excelx:= excelapp.Cells[i,1].Value; excely:=ExcelApp.cells[i,2].value; if (excelx<>'') and (excely<>'') then begin if strngrd1.RowCount<i then strngrd1.RowCount:=strngrd1.RowCount+1; strngrd1.Cells[0,row]:=IntToStr(row); strngrd1.Cells[1,row]:=excelx; strngrd1.Cells[2,row]:=excely; row:=row+1; end; pb1.StepBy(1); end; finally workBook.Close; ExcelApp.quit; ExcelApp := Unassigned; WorkBook := Unassigned; end; end; end;
Author:cnblogs 嘯月☆天狼