请高手请来帮帮忙,我一定结贴

时间:2023-01-12 19:51:35
我在VB中写程序,其中有段代码如下:
dim xlApp               As Variant
Dim xlBook              As Excel.Workbook
Dim xlSheet             As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(App.Path & "\p01.xls")

Set xlSheet = xlBook.Worksheets(1)
xlApp.Visible = True
xlSheet.PrintPreview'此时将会出现excel打印预览界面。并可以页面设置。

xlbook.saved=true
xlbook.close
xlapp.quit
问题是:在打印预览界面出现后,用户如点击“分页预览”则会从预览界面切换到excel,此时我的程序向后一跑就从excel中退出了,达不到分页预览功能,请个位高手帮帮忙,最好是能实现分页预览功能(我想是不是能让程序在"xlbook.saved=true前停住),或者不出那个分面预览按钮也行,若对问题有不清楚,可发我e-mail:mingl@e-future.com.cn,
大家一起讨论,我QQ65986008.

12 个解决方案

#1


up
关注

#2


白说

#3


没人回答?唉,我真可怜

#4


必须要quit吗??

#5


是啊,不quit怎么能杀掉excel进程,不能让用户自己关啊,我还要做别的事。

#6


不可以用set xxx=nothing 吗

#7


那肯定不行,你自己试试。再说就算行,那效果还不是一样。

#8


我给客户做的报表全是这样的.你不可能通过延迟来实现吧.
资源,变量的释放都不会有问题.

我想你是调用excel的lib吧,可以看看它的帮助文件,我粗略的查了一下,还没发现它提供这方面的接口.

#9


你是说不能实现了吗?555555。如果只是set xxx=nothing的话,那么excel就不会关闭就得由用户自己来关,我希望用户在用这个程序时跟本不知道自己是在用excel,虽然我可以通过程序去掉excel的所有菜单,工具栏,格线等,但是如果用户不点打印预览而直接点关闭的话,那么我从哪里退出excel呢,不退出好象不行啊,不知道你是怎么做的?

#10


刚才看了一下,set xxx=nothing和xlapp.quit效果好象是一样的,还是不能解决这个该死的分页预览问题。

#11


ACCESS报表可以不quit,如果用户关闭的话,进程也结束,
但是EXCEL就不能这样

建议是不是可以这样:

1,save退出
2,ShellExecute打开
3,运行宏直接进入页预览

怎么样做宏。。。我没试过 :-)

#12


运行宏和在vb里面写好像没什么分别,现在关键问题是我何时退出excel,如果想让用户使用分页预览功能,我就不能马上退出excel ,只有让用户自己关,但是这样似乎不好,否则只有告诉用户不能使用分页预览功能了。

#1


up
关注

#2


白说

#3


没人回答?唉,我真可怜

#4


必须要quit吗??

#5


是啊,不quit怎么能杀掉excel进程,不能让用户自己关啊,我还要做别的事。

#6


不可以用set xxx=nothing 吗

#7


那肯定不行,你自己试试。再说就算行,那效果还不是一样。

#8


我给客户做的报表全是这样的.你不可能通过延迟来实现吧.
资源,变量的释放都不会有问题.

我想你是调用excel的lib吧,可以看看它的帮助文件,我粗略的查了一下,还没发现它提供这方面的接口.

#9


你是说不能实现了吗?555555。如果只是set xxx=nothing的话,那么excel就不会关闭就得由用户自己来关,我希望用户在用这个程序时跟本不知道自己是在用excel,虽然我可以通过程序去掉excel的所有菜单,工具栏,格线等,但是如果用户不点打印预览而直接点关闭的话,那么我从哪里退出excel呢,不退出好象不行啊,不知道你是怎么做的?

#10


刚才看了一下,set xxx=nothing和xlapp.quit效果好象是一样的,还是不能解决这个该死的分页预览问题。

#11


ACCESS报表可以不quit,如果用户关闭的话,进程也结束,
但是EXCEL就不能这样

建议是不是可以这样:

1,save退出
2,ShellExecute打开
3,运行宏直接进入页预览

怎么样做宏。。。我没试过 :-)

#12


运行宏和在vb里面写好像没什么分别,现在关键问题是我何时退出excel,如果想让用户使用分页预览功能,我就不能马上退出excel ,只有让用户自己关,但是这样似乎不好,否则只有告诉用户不能使用分页预览功能了。