请问改如何实现

解决方案 »

  1.   

    1、了解清楚你的表是否有这个功能函数或者过程,如果有,一个按钮执行该函数或者过程
    2、第1如果没有,就了解一下表的内容是从哪里来的,是否数据集?
    3、第2如果是,那么问题就在于从数据库导入excel问题
    4、从数据库导入excel,论坛里面帖子千千万,搜索一下,保证有你想要的
      

  2.   

    uses  ComObj
    如果你用DBGrid把数据显示出来,不管你用什么数据库,都可以导出到Excel表里!  uses   ComObj;  procedure   TSearchinforfrm.Button11Click(Sender:   TObject);
      var
          eclApp,WorkBook:olevariant;
          xlsFileName:string;
          i,j:integer;
      begin      if   SaveDialog1.Execute   then
              xlsFileName:=SaveDialog1.FileName;          try
              eclApp:=CreateOleObject('Excel.Application');
              WorkBook:=CreateOleObject('Excel.Sheet');
              except
              Application.MessageBox('系统没有安装Microsoft   Excel','Microsoft   Excel',MB_OK+MB_ICONWarning);
              Exit;
              end;          try
              WorkBook:=eclApp.workbooks.Add;
              for   i:=0   to   DBGrid1.Columns.Count-1   do
              begin
              //这里可以更改列名,用if   ...   then进行判断和指定列名
              eclApp.Cells(1,i+1):=DBGrid1.Columns[i].FieldName;
              end;          DBGrid1.DataSource.DataSet.First;
              j:=2;
              while   not   DBGrid1.DataSource.DataSet.Eof   do
              begin
              for   i:=0   to   DBGrid1.DataSource.DataSet.FieldCount-1   do
              begin
              eclApp.Cells(j,i+1):=DBGrid1.DataSource.DataSet.Fields[i].Value;
              end;
              DBGrid1.DataSource.DataSet.Next;
              inc(j);
              end;          WorkBook.SaveAS(xlsFileName);
              WorkBook.close;
              except
              ShowMessage('文件导出失败!');
              Exit;
              end;
              Application.MessageBox('保存成功!','恭喜',MB_OK   +   MB_ICONINFORMATION);
      end;
      

  3.   

    这样是可以把数据库的内容保存到本地文件夹,可是我是想让它一点击按钮就打开一个excel,内容是表中数据。
      

  4.   

    呃 
    感觉还不如弹出一个面板直接让table来直接显示
      

  5.   

    先所数据导出存为一个excel文件.然后用API函数 shellexecute打开刚才导出的文件
    uses shallAPI;shellexecute(0, 'open', 'file_path' , nil, nil, sw_shownormal) ;