QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
10天前
查看: 2999|回复: 8
收起左侧

[已解决] vba与vb交互

[复制链接]
发表于 2013-7-17 16:38:54 | 显示全部楼层 |阅读模式 来自: 中国广东惠州

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
vb代码中获取cad应用时用的if语句:& M/ A2 }8 Q  O
SET ACADAPP=GETOBJECT(,"AUTOCAD.APPLICATION"
" P: i1 c8 z% {3 i% z* e; zif err then
/ U3 \" F- L- R" N/ E! ?8 }1 @" \! Werr.clear
/ j  [! y, _% i. B- Mset acadapp= createobject("AUTOCAD.APPLICATION")
$ @  R; A2 q$ b* G3 REND IF 7 m5 H' R* v$ P
这个语句怎么不执行呢?每次getobject时会出现控件错误的提示框,问题出在哪里啊,求解释;)
发表于 2013-7-17 22:11:32 | 显示全部楼层 来自: 中国江苏无锡
你引用ACAD类库了吗?
 楼主| 发表于 2013-7-18 10:56:56 | 显示全部楼层 来自: 中国广东惠州
引用了肯定的。在2004 和2008 都试过了。。5 A6 W/ O2 [4 v/ Z2 e) F" P( ]% [
每次错误都是在getobject语句,# y3 p4 s% Q; O. `) l
如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
 楼主| 发表于 2013-7-18 10:57:33 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-17 22:11 static/image/common/back.gif
. A$ j( A' M- K! b- d) F4 |你引用ACAD类库了吗?
- @! L' @6 f/ [: f
引用了肯定的。在2004 和2008 都试过了。。9 r* v' r2 d1 ]) |
每次错误都是在getobject语句,
& R) O, V, Q, g. r$ M3 G/ E如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
发表于 2013-7-18 21:50:35 | 显示全部楼层 来自: 中国浙江杭州
下面的代码在我的电脑上运行是没有问题的
  1. Dim acadapp As AcadApplication
    5 w- ]" \3 v$ T/ m* c/ O
  2. On Error Resume Next3 A# r  j  v1 E7 r  F
  3. Set acadapp = GetObject(, "AUTOCAD.APPLICATION")
    4 o0 F  `6 C7 G8 e+ H$ g
  4. If Err Then( I* i6 L; G5 L/ b# r
  5. Err.Clear* ~' s+ W7 t( L5 u7 W9 Y' ?" T/ p
  6. Set acadapp = CreateObject("AUTOCAD.APPLICATION")1 f8 ?9 d! O% J7 X# ]
  7. End If
复制代码
 楼主| 发表于 2013-7-19 08:56:47 | 显示全部楼层 来自: 中国广东惠州
on error resume next 语句我曾经加在getobject语句下面尝试,没有效果。。
$ ?$ m! F4 [# C* O+ J现在写在首行,要去测试一下,谢谢奉上先
 楼主| 发表于 2013-7-20 09:34:48 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-18 21:50 static/image/common/back.gif! B+ {: U7 q, A
下面的代码在我的电脑上运行是没有问题的
+ _' c# J# J: P: G
ok,验证过了。谢谢
: g- F0 g' q; q' J9 w3 `On Error Resume Next' |5 y$ ^5 K  j  j0 B
Set acadapp = GetObject(, "AUTOCAD.APPLICATION")& P2 J- P  G- H9 O2 d5 c
这两句以前我试过,不过顺序翻过来试的
发表于 2013-7-20 14:51:07 | 显示全部楼层 来自: 中国江苏无锡
翻过来就不对了) ^" U2 I' H* y; W, C9 O
必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做
 楼主| 发表于 2013-7-22 11:22:26 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-20 14:51 static/image/common/back.gif1 }+ B8 v" w% ]! v5 o% H
翻过来就不对了
5 J3 L6 I7 d* H& b5 S% q必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做
1 F7 o0 j7 X# g
我说呢。
' Z+ `. Y$ Q% Z* t我以为是代码出错后执行出错陷阱然后再选择跳转呢。- O9 @3 [- W" a# j2 C! N
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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