明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 506|回复: 7

VBA怎么判断一个图形变量指向的图元已经被删除

[复制链接]
发表于 2023-2-14 19:12 | 显示全部楼层 |阅读模式
Dim En As AcadEntity
    En.Delete
    Debug.Print En.ObjectName    ‘此处再次调用en变量会报错。想加个判断避开报错。
发表于 2023-2-14 20:47 | 显示全部楼层
明经通道 Visual LISP 函数
   明经通道 Visual LISP 函数     

vlax-erased-p
  


确定对象是否被删除

(vlax-erased-p obj)
参数

obj

VLA 对象。

返回值

如果对象被删除,则返回 T,否则返回 nil。

我知道vlax 的
 楼主| 发表于 2023-2-15 17:40 | 显示全部楼层
liuhe 发表于 2023-2-14 20:47
明经通道 Visual LISP 函数
   明经通道 Visual LISP 函数     

谢谢,也可以用vb运行lisp函数。
发表于 2023-2-20 10:31 | 显示全部楼层
    If Err = -2145386420 Then
        Err.Clear
        MsgBox "对象已被删除!"
    End If
 楼主| 发表于 2023-2-20 17:10 | 显示全部楼层
陈宫在家吗 发表于 2023-2-20 10:31
If Err = -2145386420 Then
        Err.Clear
        MsgBox "对象已被删除!"

这个还是需要on error来忽略出错代码。
发表于 2023-2-21 09:00 | 显示全部楼层
chixun99 发表于 2023-2-20 17:10
这个还是需要on error来忽略出错代码。

是的,前面要加 on error resume next
 楼主| 发表于 2023-2-21 18:28 | 显示全部楼层
陈宫在家吗 发表于 2023-2-21 09:00
是的,前面要加 on error resume next

这个我也想到过,只是想再请教下有没有其他方法能做到而已。按道理对象删除,针对变量应该有相应的变化可以在代码中判断的。可惜研究不够深入。
发表于 2023-2-22 10:39 | 显示全部楼层
chixun99 发表于 2023-2-21 18:28
这个我也想到过,只是想再请教下有没有其他方法能做到而已。按道理对象删除,针对变量应该有相应的变化可 ...

这个就不会了。我开始想的用isempty之类的判断的,没成功
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-28 02:29 , Processed in 0.159016 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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