请高手请来帮帮忙,我一定结贴
请高手请来帮帮忙,我一定结贴
楼主koko897(明亮的天空)2003-06-30 11:01:50 在 VB / 多媒体 提问 我在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. 问题点数:0、回复次数:12Top
1 楼flc()回复于 2003-06-30 11:13:07 得分 0
up
关注Top
2 楼koko897(明亮的天空)回复于 2003-06-30 11:29:16 得分 0
白说Top
3 楼koko897(明亮的天空)回复于 2003-06-30 14:33:06 得分 0
没人回答?唉,我真可怜Top
4 楼genrison(中南海)回复于 2003-06-30 15:39:28 得分 0
必须要quit吗??Top
5 楼koko897(明亮的天空)回复于 2003-06-30 15:45:44 得分 0
是啊,不quit怎么能杀掉excel进程,不能让用户自己关啊,我还要做别的事。Top
6 楼genrison(中南海)回复于 2003-06-30 16:29:47 得分 0
不可以用set xxx=nothing 吗Top
7 楼koko897(明亮的天空)回复于 2003-06-30 16:42:14 得分 0
那肯定不行,你自己试试。再说就算行,那效果还不是一样。Top
8 楼genrison(中南海)回复于 2003-06-30 16:48:12 得分 0
我给客户做的报表全是这样的.你不可能通过延迟来实现吧.
资源,变量的释放都不会有问题.
我想你是调用excel的lib吧,可以看看它的帮助文件,我粗略的查了一下,还没发现它提供这方面的接口.Top
9 楼koko897(明亮的天空)回复于 2003-06-30 17:08:27 得分 0
你是说不能实现了吗?555555。如果只是set xxx=nothing的话,那么excel就不会关闭就得由用户自己来关,我希望用户在用这个程序时跟本不知道自己是在用excel,虽然我可以通过程序去掉excel的所有菜单,工具栏,格线等,但是如果用户不点打印预览而直接点关闭的话,那么我从哪里退出excel呢,不退出好象不行啊,不知道你是怎么做的?Top
10 楼koko897(明亮的天空)回复于 2003-06-30 17:24:56 得分 0
刚才看了一下,set xxx=nothing和xlapp.quit效果好象是一样的,还是不能解决这个该死的分页预览问题。Top
11 楼gpo2002(永吹不休)回复于 2003-06-30 21:51:13 得分 0
ACCESS报表可以不quit,如果用户关闭的话,进程也结束,
但是EXCEL就不能这样
建议是不是可以这样:
1,save退出
2,ShellExecute打开
3,运行宏直接进入页预览
怎么样做宏。。。我没试过 :-)Top
12 楼koko897(明亮的天空)回复于 2003-07-01 09:58:00 得分 0
运行宏和在vb里面写好像没什么分别,现在关键问题是我何时退出excel,如果想让用户使用分页预览功能,我就不能马上退出excel ,只有让用户自己关,但是这样似乎不好,否则只有告诉用户不能使用分页预览功能了。Top
-
相关文章
2秒记住本站域名
玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn
