关于AU3调用excel进程已经.visible=false打开其他新excel还会显示
Global $oexcel = ObjCreate("excel.application")$oexcel.visible = False脚本已经申明excel进程是visible=false,后续打开excel进程可以隐藏,但是当用户操作打开其他excel时该visible=false的进程就会显出来了。。。。是不是还少什么申明代码!!{:face (394):} 只对$oExcel对象打开的Excel文件有效,对其他方式打开的Excel文件无效 回复 2# xms77
xms你好,我试过在每一个$wb=$oexcel.workbooks.open($path&$wbname)
$wb.visible=false。
但还是在打开新的excel对象时会显示出来!! excel默认用同一进程打开文件,所以虽然visible=false,但是当其他文件打开里也会跟着显示出来,不过03版选项里有一个设置项可以使excel用不同进程打开文件,这样就不会了,不过不同进程的坏处是各个进程之间不能通信,也就是说你不能调用另一个excel进程里的资源,比如工作簿引用之类的,但是作为你这个程序运行时的临时解决方案还是可行的,你可以尝试在03版下找到那个选项,然后录制宏来记录勾选时改变的代码,然后调用,程序结束时恢复 回复 3# mpf5566
不同进程的话,是互不相关的。 回复 4# kevinch
嗯,感谢kevinch 的答复,那所谓临时解决方案提醒使用的用户运行前检测EXCEL进程并结束掉而且使用期间不要打开EXCEL了。 网上可以找到在不同进程中打开不同excel文档的方法,参考一下,修改的时候监控系统变化,应该是修改的注册表项,如果证实可以的话,那么可以直接用程序修改对应的注册表项,程序运行完成后恢复原来的注册表项 回复 7# kevinch
好的。。。多谢kevinch,我再好好研究一下!
页:
[1]