Delphi access 导出 Excel 表格


本文整理自网络,侵删。

 

{导出 Excel 表格} 
procedure GenXlsFile(sPRG:TProgressBar;SDBGrid:TDBGrid;sDataSet:TADOQuery;Fn:String;Vis:Boolean); 
//uses ComObj; 
var 
  ExcelApp: Variant; 
  i,j:integer; 
begin 
  try 
    ExcelApp := CreateOleObject('Excel.Application'); 
  except 
    application.MessageBox('系统中的MS Excel软件没有安装或安装不正确!','错误',MB_ICONERROR+MB_OK); 
    exit; 
  end; 
  ExcelApp.visible:=vis; 
  try 
    excelapp.caption:='应用程序调用 Microsoft Excel'; 
    ExcelApp.WorkBooks.Add; 
    //写入标题行 
    for i:=1 to sDBGrid.FieldCount do 
    begin 
      ExcelApp.Cells[1,i].Value:=sDBGrid.Columns[i-1].Title.Caption ; 
    end; 
    sprg.Max:=sDataSet.RecordCount;   //插入进度条 
    sDataSet.First; 
    i:=2; 
    while not sDataSet.Eof do 
    begin 
       for j:=0 to sDataSet.Fields.Count-1 do 
       begin 
         ExcelApp.Cells[i,j+1].Value :=sDataSet.Fields[j].AsString; 
       end; 
       sDataSet.Next; 
       i:=i+1; 
       sprg.StepBy(1);        //进度条步长 
    end; 
    sDataSet.First; 
    sPrg.Position :=0;        // 
    if application.MessageBox('数据导出完成.确认保存吗?','信息提示',MB_ICONQUESTION+MB_YESNO+MB_DEFBUTTON1+MB_SYSTEMMODAL)=IDYES then 
    begin 
      if not ExcelApp.ActiveWorkBook.Saved then 
         ExcelApp.ActiveWorkBook.SaveAs(fn); 
    end 
    else begin 
      ExcelApp.ActiveWorkBook.Saved := True; //不保存 
    end; 
  finally 
    excelapp.quit; //退出EXCEL软件 
  end; 
end; 
――――――――――――――――

原文链接:https://blog.csdn.net/aroc_lo/article/details/4144223

相关阅读 >>

Delphi无dll穿墙下载者

Delphi 2010 复制整个文件夹(当然包括嵌套文件夹)

Delphi 窗体的位置和高宽度-tform:letf、top、width、height、clientwidth、clientheight

Delphi的initialization和finalization

Delphi 获取局域网所有ip

Delphi中读写txt文件的一段代码

Delphi toscilloscope 仿windows任务管理器cpu使用记录组件

Delphi鼠标移过放大镜效果

Delphi 10.2 ide界面

Delphi中如何实现模糊查找文件

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...