• 把数据库表里的信息 导入Execl表 程序截图


    uses

       Excel2000,  Math, OleServer

    添加 ToolBar1, Gauge1,ImageList1,ExcelWorkbook1,ExcelWorksheet1,ADOConnection1,ADOQuery1,DataSource1 ,Memo1,DBGrid1,StatusBar1

     

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ComCtrls, ImgList, ToolWin, DB, Grids, DBGrids, ADODB, StdCtrls,
      Gauges, Excel2000,  Math, OleServer;
    type
      TForm1 = class(TForm)
        Memo1: TMemo;
        ADOConnection1: TADOConnection;
        ADOQuery1: TADOQuery;
        DBGrid1: TDBGrid;
        DataSource1: TDataSource;
        ToolBar1: TToolBar;
        ImageList1: TImageList;
        ToolButton1: TToolButton;
        ToolButton2: TToolButton;
        ToolButton3: TToolButton;
        ToolButton4: TToolButton;
        ToolButton5: TToolButton;
        ToolButton6: TToolButton;
        ToolButton7: TToolButton;
        Gauge1: TGauge;
        ExcelWorksheet1: TExcelWorksheet;
        StatusBar1: TStatusBar;
        ExcelWorkbook1: TExcelWorkbook;
        procedure ToolButton5Click(Sender: TObject);
        procedure ToolButton7Click(Sender: TObject);
        //procedure ExcelApplication1NewWorkbook(Sender: TObject;
         // var Wb: OleVariant);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.ToolButton5Click(Sender: TObject);
    var
      SQLStr : String;
    begin   //根据Memo1中的SQL语句提取数据库的信息显示在DBgrid
      SQLStr := '';
      SQLStr :=Memo1.Lines.GetText;
    
      ADOQuery1.Close;
      ADOQuery1.Sql.Clear;
      ADOQuery1.SqL.Add(SQLStr);
      ADOQuery1.Open;
      end;
    
    procedure TForm1.ToolButton7Click(Sender: TObject);
    var
     ExcelApp1:TExcelApplication;  //uses Excel2000
        Row,i:Integer;
        AFileName : string;
    begin
      AFileName := 'D:\a.xlsx';
      ExcelApp1:=TExcelApplication.Create(nil);
      try
        ExcelApp1.Connect;//和Execl连接如果没有Excel程序可能要出错
        ExcelApp1.Workbooks.Add(Null,0);//为Excel添加工作薄
        ExcelWorkbook1.ConnectTo(ExcelApp1.Workbooks[1]);
        ExcelWorkSheet1.ConnectTo(ExcelWorkBook1.Sheets[1] as _WorkSheet);
    
        if DBGrid1.DataSource.DataSet.RecordCount=0 then Exit;
        row:=2;
        for i:=1 to ADOQuery1.Fields.Count do
        begin
          ExcelWorkSheet1.Cells.Item[1,i]:=ADOQuery1.Fields[i-1].FieldName ;
        end;
        ADOQuery1.First;
        while not ADOQuery1.Eof do
        begin
          Application.ProcessMessages;
          for i:=1 to ADOQuery1.Fields.Count do
          begin //把查询结果写入到电子表格中
            excelworksheet1.Cells.Item[row,i].numberformatlocal:='@';
            ExcelWorkSheet1.Cells.Item[row,i]:=ADOQuery1.Fields[i-1].Value;
          end;
          row:=row+1;
          Gauge1.Progress:=Ceil(100*(row-2)/(ADOQuery1.RecordCount));
          if Gauge1.Progress=100 then StatusBar1.Panels[1].Text:='导出完成,已保存至'+AFileName;          //AFileName是导出文件存放的目录位置。
          ADOQuery1.Next;
        end;
      finally
        ExcelWorkBook1.SaveCopyAs(AFileName);
        ExcelWorkSheet1.Disconnect;
        ExcelWorkBook1.Close(False);
        ExcelApp1.Disconnect;
        ExcelApp1.Quit;
        ExcelApp1.Free;
        Gauge1.Visible:=False;
      end;
    end;
    
    
    
    
    end.
    
  • 相关阅读:
    阿里云服务器nginx配置https协议
    com.alibaba.fastjson.JSONObject cannot be cast to java.lang.Stringcom.alibaba.fastjson.JSONObject cannot be cast to java.lang.String
    Nginx日志报错open() "/opt/Nginx/nginx/nginx.pid" failed (2: No such file or directory)
    腾讯云COS使用前端js的api获取签名
    安装CURL 时报错GnuTLS: The TLS connection was nonproperly terminated. Unable to establish SSL connection.
    ABP项目构建
    is ok?
    JavaScript 字符串处理(截取字符串)的方法(slice()、substring()、substr() )
    医药消炎药蒲地蓝消炎片
    JavaScript 输出信息的方式
  • 原文地址:https://www.cnblogs.com/beeone/p/1797490.html
Copyright © 2020-2023  润新知