Delphi中Excel的快速导入

原创 2004年09月08日 16:37:00

//怎样可以提高EXCEL的导出速度?

uses ADODB,excel97,adoint;

function TForm1.ExportToExcel: Boolean;
var
  xlApp,xlBook,xlSheet,xlQuery: Variant;
  adoConnection,adoRecordset: Variant;
begin
  adoConnection := CreateOleObject('ADODB.Connection');
  adoRecordset := CreateOleObject('ADODB.Recordset');
  adoConnection.Open('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/Tree.mdb;Persist Security Info=False');
  adoRecordset.CursorLocation := adUseClient;
  adoRecordset.Open('SELECT * FROM tree',adoConnection,1,3);

  try
    xlApp := CreateOleObject('Excel.Application');
    xlBook := xlApp.Workbooks.Add;
    xlSheet := xlBook.Worksheets['sheet1'];
    xlApp.Visible := True;

    //把查询结果导入EXCEL数据
    xlQuery := xlSheet.QueryTables.Add(adoRecordset,xlSheet.Range['A1']); 
//关键是这一句
    xlQuery.FieldNames := True;
    xlQuery.RowNumbers := False;
    xlQuery.FillAdjacentFormulas := False;
    xlQuery.PreserveFormatting := True;
    xlQuery.RefreshOnFileOpen := False;
    xlQuery.BackgroundQuery := True;
    //xlQuery.RefreshStyle := xlInsertDeleteCells;
    xlQuery.SavePassword := True;
    xlQuery.SaveData := True;
    xlQuery.AdjustColumnWidth := True;
    xlQuery.RefreshPeriod := 0;
    xlQuery.PreserveColumnInfo := True;
    xlQuery.FieldNames := True;
    xlQuery.Refresh;

    xlBook.SaveAs('d:/fromD.xls',xlNormal,'','',False,False);

  finally
    if not VarIsEmpty(XLApp) then begin
      XLApp.displayAlerts:=false;
      XLApp.ScreenUpdating:=true;
      XLApp.quit;
    end;
  end;
end;

Delphi 导出、导入Excel的一个快速方法

The quickest way is to use an array of Variant,and just pass the entire array to Excel: var     xls,...
  • lcfeng1982
  • lcfeng1982
  • 2015年02月13日 11:03
  • 3338

Delphi Excel导入 的通用程序

Delphi Excel导入 的通用程序 . 分类: delphi 2012-09-24 18:20 257人阅读 评论(0) 收藏 举报  exceldelphiinteger数据库c步骤: ...
  • wozengcong
  • wozengcong
  • 2014年08月30日 09:49
  • 1506

用Delphi将数据导入到Excel并控制Excel(转载)

一、调用Excel的方法:一般情况下有两种方法调用Excel: 1、 直接使用Delphi自带的组件:在Form中分别放入ExcelApplication, ExcelWorkbook和Excel...
  • tesily
  • tesily
  • 2016年12月27日 14:36
  • 638

怎么在delphi中读取Excel数据(各种详细操作)

( 一 ) 使用动态创建的方法 首先创建 Excel 对象,使用ComObj : Var   ExcelApp : Variant ;   ExcelApp := CreateOl...
  • zang141588761
  • zang141588761
  • 2016年06月15日 15:58
  • 4949

怎么在delphi中读取Excel数据(各种详细操作)

( 一 ) 使用动态创建的方法 首先创建 Excel 对象,使用ComObj : Var ExcelApp : Variant ; ExcelApp := CreateOleObject ...
  • zisongjia
  • zisongjia
  • 2017年03月15日 15:30
  • 1067

Delphi中对Excel表格文件的导入和导出操作。

将Listview列表中的数据导入到Excel文件中。procedure TfreadExcel.WriteExcel; var i,idex : Integer; ExcelApp:Vari...
  • songchao_2011
  • songchao_2011
  • 2014年02月27日 13:04
  • 1137

delphi导出数据至Excel的几种方法及比较

delphi导出数据至Excel的几种方法及比较      一、delphi 快速导出excel uses ComObj,clipbrd; fu...
  • hangyi_008
  • hangyi_008
  • 2014年03月07日 10:37
  • 916

delphi自带控件操作excel

在介绍使用delphi控件前,我们首先需要了解关于EXCEL的几个基本概念:EXCEL应用程序、工作薄(book)、工作表(sheet),我们每次打开excel应用程序时,都会看到一个工作薄和三张工作...
  • js0001
  • js0001
  • 2014年01月05日 14:12
  • 4403

delphi 导出到excel的7种方法

第一种方法delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery)...
  • KWWL8888
  • KWWL8888
  • 2013年12月02日 09:09
  • 1599

Delphi 导出数据至Excel的7种方法

一; delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery):...
  • zang141588761
  • zang141588761
  • 2016年08月22日 13:15
  • 5934
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Delphi中Excel的快速导入
举报原因:
原因补充:

(最多只允许输入30个字)