您的位置:程序门 -> delphi -> 网络通信/分布式开发



 excel 不能完全退出


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


excel 不能完全退出
发表于:2008-01-17 11:42:36 楼主
不能完全退出excel,请高手见教。。全部的代码如下:
sub   onlbuttondown(byval   item,   byval   flags,   byval   x,   byval   y)                                                                                                                                                                                          
dim   database,server,uid,pwd
dim   strcn,cn,is_sql,comm
dim   localmachinename,strfilename,strsourcefilename
dim   rs,xlbook,xlsheet,n1_ban,dd,a,b
dim   i,row,dd_begin,dd_end,count

set   localmachinename=   hmiruntime.tags   ("@localmachinename")
localmachinename.read()
strcn=localmachinename.value    

strsourcefilename   =   "e:\mb\n1w_bb.xls"
'server   =   "server="&   strcn   &"\wincc"
server   =   "server=server1\wincc"
database="northwind"
uid="lsk"
pwd="lsk"

set   a=hmiruntime.tags   ("n1_bb_date")
a.read   ()
dd   =   formatdatetime(a.value,2)
strfilename   =   datepart("yyyy",a.value)
if   datepart("m",a.value) <10   then
strfilename   =   datepart("yyyy",a.value)&"0"&datepart("m",a.value)
else
strfilename   =   datepart("yyyy",a.value)&datepart("m",a.value)
end   if
if   datepart("d",a.value) <10   then
strfilename   =   strfilename&"0"&datepart("d",a.value)
else
strfilename   =   strfilename&datepart("d",a.value)
end   if

set   a=hmiruntime.tags   ("n1_bb_ban")
a.read   ()
b   =   a.value
select   case   b
      case   1:
                    n1_ban   =   "08:00-20:00"      
                    dd_begin   =   dd   &   "   12:00:00"
                    dd_end   =   dd   &   "   23:59:59"
                    strfilename   =   "e:\n1w\"&   strfilename   &   "_bb1.xls"
      case   2:
                    n1_ban   =   "20:00-08:00"
                    dd_begin   =dd   &   "   00:00:00"
                    dd_end   =   dd   &   "   11:59:59"
                    strfilename   =   "e:\n1w\"&   strfilename   &   "_bb2.xls"
end   select
strcn="provider=sqloledb.1;driver=sql   server;"&   server   &";database="&   database   &";uid="&   uid   &";pwd="&pwd
set   cn   =   createobject("adodb.connection")
cn.connectionstring   =   strcn  
cn.open

is_sql   =   "select   *   from   n1_gd   where   (n1_date_c   > =   '"&dd_begin&"'   and   n1_date_c   <=   '"&dd_end&"')   order   by   n1_date"

set   rs   =createobject("adodb.recordset")
set   comm=createobject("adodb.command")
comm.activeconnection   =   cn
comm.commandtext   =   is_sql
set   rs   =   comm.EXECute

if     rs.eof   =   true   and   rs.bof   =   true   then
      msgbox   "??òa2é?ˉμ?êy?y2?′??ú!",   vbinformation   +   vbokonly,   "?μí3ìáê?"
      set   comm   =   nothing
      rs.close
      set   rs   =   nothing
      cn.close
      set   cn   =   nothing
      exit   sub
else
    i=0
    rs.movefirst
   
    set   xlbook   =   getobject(strsourcefilename)
    set   xlsheet   =   xlbook.worksheets(1)
    xlbook.application.visible   =   true
    xlsheet.pagesetup.printgridlines   =   true  

    do   while   rs.eof   =   false
                xlsheet.cells(6,   "b")   =   dd
                xlsheet.cells(7,   "b")   =   n1_ban
                xlsheet.cells(i+10,   "a")   =   cdate(rs.fields(0).value)
                xlsheet.cells(i+10,   "d")   =   rs.fields(2).value
                xlsheet.cells(6,   "e")   =   xlsheet.cells(6,   "e")   +   rs.fields(2).value
                i   =   i+1
                xlsheet.cells(7,   "e")   =   i
                rs.movenext
  loop
 
    xlbook.saveas   strfilename
    xlsheet.printpreview   true
    xlsheet.activate   true
    '                                                                                                                    
    xlbook.close                              
    objexcelapp.workbooks.close                
    objexcelapp.quit
    set   objexcelapp=nothing
end   if

set   comm   =   nothing
rs.close
set   rs   =   nothing
cn.close
set   cn=nothing    

end   sub
发表于:2008-01-17 14:59:541楼 得分:0
楼主来错地方了吧,这里可是delphi版啊
是不是sf啊,哈哈


快速检索

最新资讯
热门点击