单位的软件用delphi7 开发,用的DevExpresV33 版本控件,现在想使用cxgrid 导出ExceL,网上查用cxExportGrid4Link 导出EXCEL,,好像该版本cxgrid不支持导出EXCEL,该版本DevExpres里没有cxExportGrid4Link.pas,老板催的要死,哪位高手能帮帮忙,发一份cxExportGrid4Link.pas到我邮箱:[email protected].
       不知还有什么其他方法,cxgrid 导出EXCEL。大家帮我想想办法。

解决方案 »

  1.   

    function saveAsExcel(sqlstr,filename:string):integer; ­var ­   fieldNum: integer; ­   i,j : integer; ­   exls,sheet: variant; ­   ADOQueryx: TADOQuery; ­begin ­try ­  exls:=createoleobject('Excel.application'); ­  sheet:=createoleobject('excel.sheet'); ­except ­  application.MessageBox('请先安装MICROSOFT EXCEL!','提示',mb_ok+mb_iconinformation); ­  exit; ­end; ­  sheet:=exls.workBooks.Add; ­  adoqueryx:=Tadoquery.create(nil); ­  adoqueryx.Connection:=form1.ADOConnection1; ­  adoqueryx.SQL.Clear; ­  adoqueryx.SQL.Add(sqlstr); ­  adoqueryx.Open; ­  with adoqueryx  do ­  begin ­    DisableControls; ­  for i:=1 to adoqueryx.FieldCount do ­    begin ­       exls.Cells[1,i].value:=adoqueryx.fields[i-1].DisplayName;   ­    end; ­    first; ­    i:=2; ­    while not eof do ­      begin ­        for j:=1 to fieldcount do ­          begin ­            exls.Cells[i,j]:=fields[j-1].AsString; ­          end; ­        next; ­        i:=i+1; ­      end; ­      EnableControls; ­      exls.WorkBooks[exls.WorkBooks.Count].SaveAS(filename); ­      exls.activeWorkBook.saved:=true; ­      exls.workbooks.close; ­      exls.quit; ­    end; ­    result:=1; ­    adoqueryx.Close; ­    adoqueryx.Destroy; ­    adoqueryx:=nil; ­end; ­
      

  2.   

    cxgird  打印怎么实现,jjpweb 说的办法实现了导出Excel,但是在软件中cxgrid 实现打印功能怎么办?