以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助],请帮看看这段代码的打开excel应用程序怎么自动关闭  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=19573)

--  作者:完美人生
--  发布时间:2012/5/14 23:34:00
--  [求助],请帮看看这段代码的打开excel应用程序怎么自动关闭

以下这段代码运行后启动excel程序不能自动关闭,求关闭的方法

Dim Book As New XLS.Book(ProjectPath & "Attachments\\明细.xls")
Dim fl As String = ProjectPath & "Reports\\明细.xls"
Book.Build() \'生成细节区
Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表
Dim a As  Integer
a=sheet.Rows.Count \'取得总行数
Dim aa As Integer
For aa=1  To a
Sheet.Rows(aa).PageBreak=False
Next
Dim i As Integer
Dim x As  Double
Dim t As Integer
Dim y As Integer
y=20 \'定义除表头之外的打印行数
x=Math.Floor((a-4)/y)
For t=1 To x
Sheet.Rows(t*y+4).PageBreak = True
Next
Book.Save(fl) \' 保存工作簿

Dim App As New MSExcel.Application
App.Visible = False
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "Reports\\明细.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
With Ws.PageSetup
   .PrintTitleRows =Ws.Rows("2:5").Address
End With


wb.Save \' 保存工作簿
App.Quit

 

 

Dim Proc As New Process \'打开工作簿
Proc.File = fl
Proc.Verb = "Print" \'指定动作
Proc.Start()

[此贴子已经被作者于2012-5-14 23:56:24编辑过]

--  作者:程兴刚
--  发布时间:2012/5/15 7:42:00
--  
  • Quit

    关闭Excel应用程序,如:App.Quit

重要说明:只要定义了Application,Excel程序就会被打开。如果没有将其Visible属性设为True,这个Excel程序就会一直停留在进程中。为避免这种现象,一定要在代码的最后一行加上App.Quit,如果已经将Visible设为True,就不用加App.Quit。因为Excel程序在可见状态下,可直接手工关闭退出。

 

 所以,您在最后一行再加上App.Quit


--  作者:完美人生
--  发布时间:2012/5/15 16:09:00
--  [求助],请帮看看这段代码的打开excel应用程序怎么自动关闭

谢谢,果真如此


--  作者:完美人生
--  发布时间:2012/5/15 16:15:00
--  [求助],请帮看看这段代码的打开excel应用程序怎么自动关闭
经过一段时间的学习,终于完成了处女作,好高兴啊,谢谢大师,谢谢班主
--  作者:程兴刚
--  发布时间:2012/5/15 18:06:00
--  

呵呵,祝贺您,我到至今还没有拿出一个完整的系统呢,向您学习!