QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
7天前
查看: 3113|回复: 8
收起左侧

[已解决] vba与vb交互

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

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

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

x
vb代码中获取cad应用时用的if语句:+ z- u% N2 B1 k+ Q
SET ACADAPP=GETOBJECT(,"AUTOCAD.APPLICATION"
$ {: Y9 Y! J: ^; h% q4 b- eif err then: v  |& ^: L4 H+ O! k- t/ l
err.clear
4 G7 `+ v0 @, N- o3 b2 D/ Hset acadapp= createobject("AUTOCAD.APPLICATION")6 N1 H4 o  H% {. v
END IF
* K2 Z/ J* C- t$ t这个语句怎么不执行呢?每次getobject时会出现控件错误的提示框,问题出在哪里啊,求解释;)
发表于 2013-7-17 22:11:32 | 显示全部楼层 来自: 中国江苏无锡
你引用ACAD类库了吗?
 楼主| 发表于 2013-7-18 10:56:56 | 显示全部楼层 来自: 中国广东惠州
引用了肯定的。在2004 和2008 都试过了。。1 P# X5 @7 o3 n  h5 V
每次错误都是在getobject语句,7 Y1 a+ r% j/ N& l5 x+ O% e: f
如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
 楼主| 发表于 2013-7-18 10:57:33 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-17 22:11 static/image/common/back.gif
8 _7 P7 C* o2 ]3 T# `你引用ACAD类库了吗?

9 m. x8 ]7 X& B+ Y- a引用了肯定的。在2004 和2008 都试过了。。$ A' a* {$ c) A; a
每次错误都是在getobject语句,1 @. q3 D! T% r$ I. |
如果不写第一句和if语句直接(createobject语句)就能够打开cad并运行代码。
发表于 2013-7-18 21:50:35 | 显示全部楼层 来自: 中国浙江杭州
下面的代码在我的电脑上运行是没有问题的
  1. Dim acadapp As AcadApplication
    1 ?: s& s5 U: ^& R$ X: |
  2. On Error Resume Next$ X) E1 f2 V" e/ m" ?+ C0 E9 N! K( \
  3. Set acadapp = GetObject(, "AUTOCAD.APPLICATION")' ?; _! w4 h  H
  4. If Err Then
    ! _3 ~3 w/ V* S  c: O- v$ M* s
  5. Err.Clear
    * O- ?# E; p+ B
  6. Set acadapp = CreateObject("AUTOCAD.APPLICATION")/ C6 D. J" g; [# [/ h
  7. End If
复制代码
 楼主| 发表于 2013-7-19 08:56:47 | 显示全部楼层 来自: 中国广东惠州
on error resume next 语句我曾经加在getobject语句下面尝试,没有效果。。
. `! k+ Z, L# t/ H/ w% k. D/ X4 w现在写在首行,要去测试一下,谢谢奉上先
 楼主| 发表于 2013-7-20 09:34:48 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-18 21:50 static/image/common/back.gif8 D! q2 U3 \& c) W! k
下面的代码在我的电脑上运行是没有问题的

; v+ t* a" _' Y& J& f8 Mok,验证过了。谢谢
! D) I5 E+ R  P1 mOn Error Resume Next
0 d6 X) E' ]7 T' E7 vSet acadapp = GetObject(, "AUTOCAD.APPLICATION")
$ T' z4 a- B! N6 s7 c; Z这两句以前我试过,不过顺序翻过来试的
发表于 2013-7-20 14:51:07 | 显示全部楼层 来自: 中国江苏无锡
翻过来就不对了
9 P; d" G$ p, o& J必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做
 楼主| 发表于 2013-7-22 11:22:26 | 显示全部楼层 来自: 中国广东惠州
woaishuijia 发表于 2013-7-20 14:51 static/image/common/back.gif& [; L2 i1 m! p5 ^
翻过来就不对了+ R9 p0 D/ M% b  i1 B
必须在可能出错的代码的前面告诉电脑遇到错误时应该怎么做

" M9 d! z8 l# \5 S% m我说呢。
& g9 h3 {  J/ v$ U5 j5 u, e我以为是代码出错后执行出错陷阱然后再选择跳转呢。, u$ U$ |# N1 x( T) r
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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