yuangw1234 发表于 2006-8-15 12:22:00

vba程式中用過sendcommand後就無法重復vba命令

<P>假如我做了一个vba程式:这个程式对应的命令是 ff</P>
<P>问题:vba程式中有这样一句画矩形程式Cmd = "rectang" &amp; vbCr &amp;&nbsp;2.0 &amp; "," &amp;&nbsp;3.0 &amp; vbCr &amp; 4.0&amp; "," &amp;&nbsp;8.0 &amp; vbCr<BR>ThisDrawing.SendCommand Cmd<BR>现在想用回车键重復命令 ff 发现不行,其重復的是程式中的画矩形,而不是ff,请问在vba中要写什么程式可以重復我的ff命令</P>

wyj7485 发表于 2006-8-15 15:08:00

我也有这个困惑,好象不能解决啊

chman 发表于 2006-8-16 10:39:00

<P>一样的困惑啊</P>

lazybug 发表于 2006-8-17 17:37:00

<P>弱弱的问一下</P>
<P>VBA定义CAD命令是怎样实现的?</P>
<P>用Lisp是(defun c:ff() ……)</P>
<P>然后回车还是执行的ff</P>

wyj7485 发表于 2006-10-9 16:46:00

该问题不知道能否解决?

chman 发表于 2006-10-9 19:34:00

lazybug发表于2006-8-17 17:37:00static/image/common/back.gif
弱弱的问一下
VBA定义CAD命令是怎样实现的?
用Lisp是(defun c:ff() ……)
然后回车还是执行的ff


<P><BR>参考这个:</P>
<P>(defun c:kk()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;;;;;;;kk为你自定义的快捷命令&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp; (setvar "cmdecho" 0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;;;; 这一行偶也不知道是啥意思,照搬<BR>&nbsp;&nbsp;&nbsp; (command "-vbarun" "e:/ff.dvb!ThisDrawing.ff") ;;;;;;此处注意路径要用 /</P>
<P>;;;;;;;; ff是你的文件名和工程名(就是sub后面的)<BR>&nbsp;&nbsp;&nbsp; (setvar "cmdecho" 1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;;;; 这一行偶也不知道是啥意思,照搬<BR>(princ)<BR>) </P>

<P>将上面的几行改好后,添加到:\Program Files\AutoCAD 2005\Support\acad2005doc.lsp</P>
<P>最后两行前。</P>
<P>再不清楚,查看站内帮助吧</P>
<P>;&nbsp;&nbsp; 后面的内容是注释,程序会自动屏蔽</P>

yuangw1234 发表于 2010-5-11 17:02:00

<p>6楼的好象有点答非所问,楼主是要问用VBA写出的程式在回车上的问题</p><p>问题是:假如把VBA写的程式做成命令OD,VBA程式中最后一行有如下语句</p><p>Cmd = "rectang" &amp; vbCr &amp;&nbsp;2.0 &amp; "," &amp;&nbsp;3.0 &amp; vbCr &amp; 4.0&amp; "," &amp;&nbsp;8.0 &amp; vbCr<br/>ThisDrawing.SendCommand Cmd<br/>第一次输入OD后可以正常使用,按道理来说回车键应该是再次执行OD,可以发现Autocad的命令行却是出现 rectang 命令</p><p></p>

yuangw1234 发表于 2010-5-12 09:10:00

期待高手出现,希望版主能露面帮忙
页: [1]
查看完整版本: vba程式中用過sendcommand後就無法重復vba命令