读书人

着急热心帮忙一上高分非常感谢!

发布时间: 2012-12-14 10:33:08 作者: rapoo

着急,热心帮忙一下,高分求救,非常感谢!!!
单位的软件用delphi7 开发,用的DevExpresV33 版本控件,现在想使用cxgrid 导出ExceL,网上查用cxExportGrid4Link 导出EXCEL,,好像该版本cxgrid不支持导出EXCEL,该版本DevExpres里没有cxExportGrid4Link.pas,老板催的要死,哪位高手能帮帮忙,发一份cxExportGrid4Link.pas到我邮箱:gao_jxemail@126.com.
不知还有什么其他方法,cxgrid 导出EXCEL。大家帮我想想办法。
[最优解释]
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; -


[其他解释]
不用控件可以不?
[其他解释]
uses Comobj-

[其他解释]
可以,任何方式实现都可以。
------其他解决方案--------------------


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

读书人网 >.NET

热点推荐