ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3279|回复: 3

[求助]玩转插入Excel中的Word对象

[复制链接]

TA的精华主题

TA的得分主题

发表于 2007-4-14 12:36 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

上一回我向各位求助怎样控制插入EXCEL中的WORD对象,现在这个问题已经得到了较好的解决。但好景不长,我又发现了新的问题:操作是能操作了,但是退出EXCEL以后,WORD的进程还驻留在内存中,调出任务管理器,发现一个40多M的WORD进程挥之不去。有没有可以结束WORD进程的语法或方法?我的VBA代码如下:

Private Sub excelcontrolword()

 Dim WordObj As Object 
 Set WordObj = Worksheets("Sheet1").OLEObjects(1)'假定事先在EXCEL中插入了WORD对象,序号就是1
    WordObj.Activate
     With WordObj.Object.Application.WordBasic
    .EditSelectAll
    .EditCopy
 End With
 Worksheets("sheet1").Range("A1").Activate

     End Sub

无论是用Quit也好:

WordObj.Object.Application.Quit

还是下面这样:

Set WordObj = Nothing
都没有效果。

EXCEL版本:2003,操作系统:XP+SP2

请明白人指点一下,谢谢!

TA的精华主题

TA的得分主题

发表于 2007-4-14 13:31 | 显示全部楼层
好像见过结束进程的帖子。楼主可以搜索一下的。

TA的精华主题

TA的得分主题

 楼主| 发表于 2007-4-14 16:31 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

谢谢“冰山上的来客”!

已经找到了结束WORD进程的语句,但缺点是它会结束处于进程中的所有WORD,这就带来一个问题:该方法将会关闭用户已经打开了但不希望关闭的其它WORD文档。另外:我的意图是将插入EXCEL中的事先写好了的WORD文档(OLEOBJECT)里的内容拷贝出来,然后新建一个WORD文档,再把内容复制进去,同时将EXCEL表中已经计算好的数据插入到这个新建文档中,形成一份工程计算书。因此后续代码中还将用到WORD进程,我是希望有一种方法,只把那个OLE对象(也即事先插入EXCEL中的那个WORD对象)的进程用完后关掉,而不影响其它WORD进程的工作。

期待一个满意的答案!感谢所有关注此问题的朋友!

TA的精华主题

TA的得分主题

发表于 2010-7-27 09:43 | 显示全部楼层

多谢提供控代码,回复一个取巧的关闭代码

由于打开后此窗口最前,在没改变前可变通实现关闭功能,所以紧跟发送键码指令就能关闭打开的窗口
SendKeys "%fx", True
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-29 10:28 , Processed in 0.039299 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表