hxg 发表于 2003-4-23 14:21:00

菜单中如何加载运行一个宏?

本帖最后由 作者 于 2003-4-23 14:21:21 编辑

当点击某一项菜单后,能够加载并执行一个宏?
我用(vl-vbarun "宏名"),如何给宏传递一个参数?

efan2000 发表于 2003-4-23 16:27:00

这是在AutoCAD官方网站的关于这个问题的解答

问:能够给AutoCAD的VBA宏传递参数吗?

答:从AutoCAD直接传递参数到一个VBA宏中是不可能的。但是你可以用VBA的GetString方法和LISP的(command)函数来传递信息。

    举例:
    首先定义一个VBA宏:
Sub testparams()
   Dim str, str2 As String
   str=ThisDrawing.Utility.GetString(False)
   str2=ThisDrawing.Utility.GetString(False)

   MsgBox str
   MsgBox str2
End Sub

    然后用以下LISP语句调用此宏:
(command "-VBARUN" "testparams" "param1" "param2")

 
把后面的"宏名"改为"testparams" "param1" "param2",可能就可以吧,参数个数可以自己定.

hxg 发表于 2003-4-24 10:29:00

高!谢谢

高!谢谢
页: [1]
查看完整版本: 菜单中如何加载运行一个宏?