QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
9天前
查看: 2997|回复: 8
收起左侧

[已解决] vba与vb交互

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

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

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

x
vb代码中获取cad应用时用的if语句:1 [$ Q2 J- `/ p5 K0 ^' ?" W
SET ACADAPP=GETOBJECT(,"AUTOCAD.APPLICATION"
2 T0 s; z* _, q% Y5 Q) tif err then
/ R$ w5 z- V1 o+ Werr.clear
1 x7 q7 E: i9 j: s9 oset acadapp= createobject("AUTOCAD.APPLICATION")1 O4 G* `7 {  F* l
END IF
! w& e/ c3 {6 I5 ]) e- M. P这个语句怎么不执行呢?每次getobject时会出现控件错误的提示框,问题出在哪里啊,求解释;)
发表于 2013-7-17 22:11:32 | 显示全部楼层 来自: 中国江苏无锡
你引用ACAD类库了吗?
 楼主| 发表于 2013-7-18 10:56:56 | 显示全部楼层 来自: 中国广东惠州
引用了肯定的。在2004 和2008 都试过了。。
- F8 s" r% J+ ]' |每次错误都是在getobject语句,! I& P( l. L1 f
如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
 楼主| 发表于 2013-7-18 10:57:33 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-17 22:11 static/image/common/back.gif
  d' L1 b5 i2 _+ @! x- u7 R你引用ACAD类库了吗?

/ c2 P& E; E/ ^- g引用了肯定的。在2004 和2008 都试过了。。
2 ]( h; \. o: M- B) X! @每次错误都是在getobject语句,+ K( x) m! Y2 O# d
如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
发表于 2013-7-18 21:50:35 | 显示全部楼层 来自: 中国浙江杭州
下面的代码在我的电脑上运行是没有问题的
  1. Dim acadapp As AcadApplication
    ( a% Z# x' r) I; {. L/ d/ w3 D$ F
  2. On Error Resume Next
    1 |; @. h8 ^+ u) ^: z2 D/ V/ z8 X
  3. Set acadapp = GetObject(, "AUTOCAD.APPLICATION")
    8 L. J) |- g9 O, |9 _
  4. If Err Then
    ! E$ D; Q( S/ n+ R' U  B
  5. Err.Clear
    ( N% h4 e/ [0 B. F
  6. Set acadapp = CreateObject("AUTOCAD.APPLICATION")
    . H4 D" H1 s, u- ~+ O
  7. End If
复制代码
 楼主| 发表于 2013-7-19 08:56:47 | 显示全部楼层 来自: 中国广东惠州
on error resume next 语句我曾经加在getobject语句下面尝试,没有效果。。
+ z' r: n; L2 T+ S# f; q& R, E, q现在写在首行,要去测试一下,谢谢奉上先
 楼主| 发表于 2013-7-20 09:34:48 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-18 21:50 static/image/common/back.gif6 ^2 U) }, A0 i5 u
下面的代码在我的电脑上运行是没有问题的

0 Q" I# v! W/ dok,验证过了。谢谢
7 [& Y2 @7 L- h# yOn Error Resume Next
/ T1 a, ]' Y) x4 r# D- a. V$ oSet acadapp = GetObject(, "AUTOCAD.APPLICATION"); h* q! w. o. Q" P- Q5 a
这两句以前我试过,不过顺序翻过来试的
发表于 2013-7-20 14:51:07 | 显示全部楼层 来自: 中国江苏无锡
翻过来就不对了
8 J( E2 }' Z) G必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做
 楼主| 发表于 2013-7-22 11:22:26 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-20 14:51 static/image/common/back.gif, n8 L" L: E, j& D) @
翻过来就不对了- v. e9 D) [& U" d! }. J
必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做
. N; l" ]" x# [. S8 R; R
我说呢。
4 l5 Z: \) |  O1 Z8 O& ^* c我以为是代码出错后执行出错陷阱然后再选择跳转呢。
* e& }, r$ O# o  a; G
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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