[求助]请问如何在VBA中引用VLISP的VLAX扩展函数?
VLAX扩展函数提供了一些VBA对象和属性不能实现的功能,如何引用VLAX以加强VBA的功能? 用vlax类模块谢谢,但还求一个例程以加深理解。
谢谢,我已下载了这个类模块,但还求斑竹给一个例程以加深理解。例如求曲线某点到起点的长度。也求教于网上各位大虾! 如以下函数:
http://www.mjtd.com/function/list.asp?id=309&ordertype=byletter
http://www.mjtd.com/function/list.asp?id=308&ordertype=byletter 使用vlax类时遇到点麻烦,用vlax无发读出点坐标,可能是类型的问题吧?
如要取得line的起点和终点,用vba的属性比较简单。用vlax我用了下列语句÷
Dim line1 As AcadLine
dim point asVariant
point1=GetDXFCodeValue(line1,10)
出错,请教何故?
多谢斑竹,还有一些问题
多谢斑竹的热心指教,受益非浅。尚有一些问题请斑竹百忙中看一下:
1、使用楼上的函数时,总是在SET OBJ=NEW VLAX处中断,提示“在装载应用程序时出现问题”,若是先在命令行运行(VL-LOAD-COM)则程序可调试通过。后来我在此句前加入一句Thisdrawing.Sendcommand("(VL-LOAD-COM)")。问题解决!
2、但以上方法只在R2002中通过,在R2004中问题依旧。奇怪的是,以前我用VLAX函数编的一些LISP程序在R2004中运行提很好。是不是“VL.Application.1"版本的问题?
3、我在本站下载的ACADX库,也是在R2002中可行而在R2004中不能用。
4、以下是我对楼上函数中某些代码的理解,是否适当请指教。
.EvalLispExpression执行字符串中的LISP代码
.SetLISPSymbol 将VBA变量的值传递给LISP变量
.getLISPSymbol 将LISP变量的值传递给VBA变量
.NullifySymbol 释放LISP变量 对不起,我的电脑有点问题,又重复发贴了。 我仍然无法用vlax取得点的坐标
不知那里出错,此问题已困惑了我
很长时间,请斑竹赐教 X坐标用:
retVal = obj.EvalLispExpression("(cadr (assoc " & gCode & " (entget(handent " & _
Chr(34) & ent.Handle & Chr(34) & "))))")
Y坐标用:
retVal = obj.EvalLispExpression("(caddr (assoc " & gCode & " (entget(handent " & _
Chr(34) & ent.Handle & Chr(34) & "))))")
Z坐标用:
retVal = obj.EvalLispExpression("(cadddr (assoc " & gCode & " (entget(handent " & _
Chr(34) & ent.Handle & Chr(34) & "))))") 谢谢斑竹
页:
[1]