zoukankan      html  css  js  c++  java
  • DBGridEh 导出数据到EXCEL文件

    在窗体uses中,添加新的引用单元:DBGridEhImpExp

      procedure TFrmdbGridEh.ToolButton2Click(Sender: TObject);

    var
      ExpClass:TDBGridEhExportClass;
      Ext:String;
      lssavedialog: tsavedialog;

    begin

    try
         lssavedialog := tsavedialog.Create(nil);
         lssavedialog.Filter := '*.xls|*.xls|*.csv|*.csv|*.htm|*.htm|*.rtf|*.rtf|*.txt|*.txt';
         lssavedialog.FileName := 'file1';
         if lssavedialog.Execute then
         begin
           case lssavedialog.FilterIndex of
             1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; 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 := TDBGridEhExportAsText; Ext := 'txt'; end;
           else
             ExpClass := nil; Ext := '';
           end;
           if ExpClass <> nil then
           begin
             if UpperCase(Copy(lssavedialog.FileName, Length(lssavedialog.FileName) - 2, 3)) <> UpperCase(Ext) then
               lssavedialog.FileName := lssavedialog.FileName + '.' + Ext;
             if FileExists(lssavedialog.FileName) then
             begin
               if application.MessageBox('文件名已存在,是否覆盖', '提示', MB_ICONASTERISK or MB_OKCANCEL) <> idok then
               begin
                 exit;
               end;
             end;
             Screen.Cursor := crHourGlass;
             try
             SaveDBGridEhToExportFile(ExpClass, DBGridEh1, lssavedialog.FileName, true);
             except
               ShowMessage('NO');
             end;
             Screen.Cursor := crDefault;
           end;
         end;
       finally
         lssavedialog.Free;
       end;

    end;

  • 相关阅读:
    下载Instagram的图片
    golang写一个简单的爬虫
    [转载]Go的50度灰:Golang新开发者要注意的陷阱和常见错误
    无法获得锁 /var/lib/dpkg/lock
    RouterOS 设定NAT loopback (Hairpin NAT)回流
    Fix-Dell iDRAC 7 error: RAC0218: The maximum number of user sessions is reached
    Nginx Location配置总结
    vcenter6.7将ESXI所有的端口组迁移到分布式交换机的步骤
    什么是DSCP,如何使用DSCP标记搭配ROS策略
    MTR追踪的好工具
  • 原文地址:https://www.cnblogs.com/cnajian/p/2656958.html
Copyright © 2011-2022 走看看