您现在的位置: 爱51代码网 >> 范文 >> 文章正文
delphi如何把TClientDataSet中的数据直接导出到excel

delphi怎么把TClientDataSet中的数据直接导出到excel。
现在是数据库中有a,b,c,d.....列,现在想把TClientDataSet中查到的所有数据导出到excel中。
不要先导出到DBGRID中再导出。初学delphi
用nativeExcel,无需安装excel,也可导出(非Com形式)。
NativeExcel里面封装了一个控件,DataSet、dbgrid导Excel
以把TClientDataSet中的数据用dbgrideh显示出来,然后利用dbgrideh的功能可以保存为多种格式包括excel。

 在窗体中添加一个SaveDialog组件和“导出”按钮B_exp,在“导出”按钮的click事件中添加如下代码:
procedure TForm1.B_expClick(Sender: TObject);
var
  ExpClass:TDBGridEhExportClass;
  Ext:String;
begin
  SaveDialog1.FileName := 'file1';
  if (ActiveControl is TDBGridEh) then
    if SaveDialog1.Execute then
    begin
      case SaveDialog1.FilterIndex of
        1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
        2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
        3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
        4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
        5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
      else
        ExpClass := nil; Ext := '';
    end;
    if ExpClass <> nil then
    begin
      if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <> UpperCase(Ext) then
        SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext;
      SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDialog1.FileName,False);
      //其中false为局部数据
    end;
  end;
end;
不过你可以设置dbgrid或者dbgrideh 不可见啊,这样导出最快的,其他方式也试过,觉得都没这样方便。

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    SecureCRT如何访问虚拟机vmWare中
    C#如何读取WINDOWS的放大系数
    cximge的图如何存入数据库并提取
    DBGRID控件显示查询结果文本类型
    TChart控件如何把表中右边的系列
    fastreport提示没有找到fr_class
    linux下编译faac及faad2提示 rec
    accept无法获取客户端ip
    TClientDataSet如何避免多人更新
    如何用delphi代码修改XML节点
    TClientDataSet如何避免多人更新
    如何用delphi代码修改XML节点
    vc++ pvoid *用delphi怎么表达
    GIS用百度行政区域的经纬度直接画
    不小心卸载了.net 4 extend,vs2
    C#byte【】里的数转换成string时
    C#的session取不到值
    java如何判断一个字符串里的数字
    随机找出24个不一样的字,在把一
    java怎么实现html转为pdf
    delphi可以调用C#写的DLL里面
    delphiaccess数据库中这么计
    查看dephi代码的时候直接跳转
    cximge的图如何存入数据库并
    DBGRID控件显示查询结果文本
    TChart控件如何把表中右边的
    fastreport提示没有找到fr_c
    安装fr4的时提示 frx11文件找
    TClientDataSet如何避免多人
    如何用delphi代码修改XML节点
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |