ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 名课 - Power BI数据分析与可视化实战 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: daihairui

[求助] 请问“CreateObject”和“GetObject"的区别是什么???

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-3-30 23:38 | 显示全部楼层
GETOBJECT是得不到东西的

TA的精华主题

TA的得分主题

发表于 2014-7-23 23:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
zhaogang1960 发表于 2012-2-17 18:35
分别打开和关闭Word后运行下面代码你就知道它们的区别是什么了:
Sub Macro1()
    Dim MyWord As Object ...

如果不加:On Error Resume Next
则在没有打开doc文件或word程序时会出错,
运行时错误‘429’:
ActiveX部件不能创建对象。


TA的精华主题

TA的得分主题

发表于 2014-7-23 23:12 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
woaicomputer 发表于 2014-7-23 23:05
如果不加:On Error Resume Next
则在没有打开doc文件或word程序时会出错,
运行时错误‘429’:

下列情况下使用错误处理语句On Error Resume Next:
一、当我们知道某种情况下会出错时,我们需要使用On Error Resume Next屏蔽错误提示,并根据是否错误知道发生了什么情况
二、当发生错误不影响程序的正常运行

TA的精华主题

TA的得分主题

发表于 2015-5-23 16:19 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2016-2-4 11:11 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
能用GETOBJECT获取带密码的文件吗?已知密码123。

TA的精华主题

TA的得分主题

发表于 2016-2-5 19:00 | 显示全部楼层
遨游in_sky 发表于 2016-2-4 11:11
能用GETOBJECT获取带密码的文件吗?已知密码123。

先open再getobject

TA的精华主题

TA的得分主题

发表于 2016-2-15 15:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
经测试,nawong 的说法是对的
getobject:(对象)没有打开时,会自动去打开(对象),如果(对象)已打开,则会直接引用已打开的(对象)。
createobject:(对象)没有打开时,会自动去打开(对象),如果(工作簿)已打开,它还会去尝试重新再打开的(工作簿)一个,然后就获取错误。
实测后确实感觉getobject 更容易使用。

TA的精华主题

TA的得分主题

发表于 2017-12-28 15:34 | 显示全部楼层
Microsoft 的东西权威解答,自然要参考 MSDN: https://msdn.microsoft.com/en-us/library/kdccchxa.aspx

里面有这么一句话

Use the GetObject function when there is a current instance of the object or if you want to create the object with a file already loaded. If there is no current instance, and you don't want the object started with a file loaded, use the CreateObject function.

TA的精华主题

TA的得分主题

发表于 2019-4-8 09:33 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 yiyiyicz 于 2019-4-8 09:37 编辑
dengbldeng 发表于 2016-2-15 15:32
经测试,nawong 的说法是对的
getobject:(对象)没有打开时,会自动去打开(对象),如果(对象)已打开, ...

确实
在CAD二次开发的教程,多次出现这样的语句结构,而且也是这样解释的
但是要注意,格式
看3楼  Set MyWord = GetObject(, "word.application")
"word.application"   前边有个逗号“,”
有没有这个逗号效果不一样。解释一时找不到
3楼的代码还可以简化

TA的精华主题

TA的得分主题

发表于 2019-4-29 09:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yiyiyicz 发表于 2019-4-8 09:33
确实
在CAD二次开发的教程,多次出现这样的语句结构,而且也是这样解释的
但是要注意,格式

GetObject(参数1,参数2)
参数1是路径,参数2是程序类型
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-12-24 11:11 , Processed in 0.023600 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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