我希望我没有那么多无聊的回复,我想我的代码为你打开了一个很大的可能性,使用你的需要和更多的代码。
如果你还需要什么,请告诉我。
peterpan您可以检查excel是否打开,如果没有打开新会话或打开现有xls文件。虽然这是lisp,但它与VBA中的检查方法相同。
vba中应该有Bubblesort的示例,这可能很有用。我在lisp中有一个递归示例,用于多达5个级别,例如num、x、y、z、code。类似excel列排序 您好@BIGAL,谢谢您的代码,我对lisp语言没有VBA那么熟悉,但是代码的范围是提供一条路径,一种遵循的方式,给AMIR一些建议,我不知道他到底想做什么。一旦他有了开始代码,当然他可以通过编写其他代码来扩展过程功能。
起初,他问:“大家好,我最近开始使用vba autocad,在我的第一个程序中,我将创建一个文本选择集,并按y坐标对文本进行排序,但我找不到按y坐标排序的方法:…”,他似乎得到了比他所需要的更多的帮助:
[列表]
[*]他有一个代码来检索对象坐标,第一步是获取对象坐标,然后按Y坐标排序。
[*]他有一个代码,可以按Y坐标对所选文本排序,并在图纸上重新绘制
[*]他有一个代码,用于将绘图上选定的文本导出到记事本可读的文本文件中
[*]他有一个用Excel导出选定文本、相对坐标和其他一些对象信息的代码。
我想与启动请求相比,他现在有更多机会管理自己的绘图自动化。
再次谢谢你,再见。
嗨,PeterPan9720
您的代码对我在Autocad中启动vba编程非常有用。在您的帮助和指导下,我用vba Autocad和excel编写了许多我需要的程序,我们可以将Autocad和excel与vba连接起来真是太神奇了,因为现在我可以从excel中绘制Autocad!!!
现在,我有一个问题,是否可以添加新的选项卡或功能区来运行vba代码??在autocad中运行Autolisp程序很简单,但没有运行vba代码的命令。我必须打开。bas在autocad中编写代码并手动运行,所以这不是很有趣。有什么方法可以轻松做到这一点吗?
提前感谢。
您好@amir0914我很高兴听到我的代码对您有更多帮助,
下面的链接解释了如何通过命令行调用过程
https://forums.autodesk.com/t5/visual-basic-customization/calling-vba-macro-from-command-line-or-button/td-p/2740073
主要的诀窍是创建一个新命令来调用dvb中的宏,作为替代方法,您可以在autocad打开时自动加载整个dvb过程(不是特定的图形,而是简单地打开autocad),并以相同的方式通过命令行调用您的过程。你应该试试,我对这部分不太在行。
再见 查找help vabload和vbarun您可以从工具栏菜单命令行等运行vba。
[排水一览表]^C^C(vl vbaload“P:/AutoDESK/VBA/drawing.dvb”)(vl vbarun“drawing”)
页:
1
[2]