mojo8997 发表于 2022-7-6 23:01:38

autolisp var to VBA文本框?

嘿,伙计们,我越来越擅长lisp,但现在我也想深入了解一点vba,如果可能的话,我听说它对学习两者都有帮助,我有一个设置变量的lsp,我希望它显示在vba文本框中。我尝试了这个,但它不起作用,感谢您提前提供的任何建议!
 
(测试进行a(setq测试12345)
 
 

Private Sub UserForm_Initialize()
ThisDrawing.SendCommand "testing" & vbCr
TextBox1.Text = ThisDrawing.GetVariable("test")

End Sub

MSasu 发表于 2022-7-6 23:14:54

首先,GetVariable语句用于列出系统变量的值,即控制绘图环境的内置变量。因此,不能用于列出用户定义的AutoLISP变量。
 
第二,由于刚刚开始,也许最好考虑一下。Net定制方法;这是因为微软和Autodesk都放弃了VBA技术。请参阅:
http://www.cadtutor.net/forum/showthread.php?t=33211
http://www.cadtutor.net/forum/showthread.php?t=34389
http://www.cadtutor.net/forum/showthread.php?t=40154
http://www.cadtutor.net/forum/showthread.php?t=41247
http://www.cadtutor.net/forum/showthread.php?t=42385
 
当做

MSasu 发表于 2022-7-6 23:30:57

为了完成AutoLISP-VBA通信,可以尝试使用用户系统变量USERI1-5、USERR1-5和USERS1-5;但是,可以通过这种方式传输的数据量是有限的。
 
AutoLISP:
(setq USERS1 “TransferedString”)
 
VBA:
ThisDrawing.GetVariable "USERS1"
 
当做

MSasu 发表于 2022-7-6 23:32:48

您还可以看看:http://autolisp-exchange.com/Forums/Forum6/F6T7P1.htm.
 
当做

BIGAL 发表于 2022-7-6 23:42:57

您可以在用户中保存变量??这些基本上是15个变量,5作为整数,5作为字符串,5作为实数,这是一个很简单的方法,如果你只在家里工作,如果外部软件“附加组件”也改变了这些值,它可能会有问题。我参与了一些软件,我们利用了这一点,并在其中保存了各种变量,如比例、墙壁厚度等
 
您也可以写入寄存器并保存变量值,但变量值只能在pc上本地保存,否则请查看保存到图形中的扩展图元。

mojo8997 发表于 2022-7-6 23:59:55

很酷,谢谢你的信息!让我看看我能想出什么。我想学习。net因为vba正在被删除,我想我应该开始研究它,再次感谢!

BIGAL 发表于 2022-7-7 00:04:44

看看这个
 
http://www.cadtutor.net/forum/showthread.php?t=47652
页: [1]
查看完整版本: autolisp var to VBA文本框?