明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: Hart

[求助]如何用VBA进行求值-->mccad转移

  [复制链接]
发表于 2002-8-27 17:25 | 显示全部楼层

嗯,这个问题用lisp比较好解决一点。调用cal命令这个问题可以解决

先手动加载(arxload (findfile "geomcal.arx"))即可。
当然,应该先判断一下这个arx是不是已经加载。
在程序前加一句
(if (null cal) (arxload (findfile "geomcal.arx")))
然后,在程序中即可尽情调用
...
(cal "1+2*3)
...

上述代码测试通过
Command: (if (null cal) (arxload (findfile "geomcal.arx")))
"D:\\Program Files\\AutoCAD 2002\\geomcal.arx"

Command: (cal "1+2*3")
7
发表于 2002-8-27 20:35 | 显示全部楼层

我的理解--

我不知道你的意思,是不是这样,你的H,A,L,G等变量是在程序运行中间由用户输入的吗?至少如果它们在用‘CAL 命令之前应该都有值了是不是?如果是这样子,或许可以采用这样的方法:
   'CAL命令的一个重要用法:
   'cal:回车
   A=XXX
   A+2
   XXX+2
这样,即实现了对A的互值,同理也可对其他变量付值,加上前面那位老兄的
( if(null cal) (arxload(findfile("geomcal.arx"))...
相信你可以写出程序来。
 楼主| 发表于 2002-8-28 08:55 | 显示全部楼层

谢谢大家

非常感谢大家的热情帮忙,使我这个难题能得以解决.
原先就是少了(if (null cal) (arxload (findfile "geomcal.arx")))所以运行程序时会出现找不到CAL命令,一定要先手动调用一次CAL命令程序才能继续,现在加上判断语句程序能正常运行了,谢谢大家.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-19 14:24 , Processed in 0.140282 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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