SOLIDWORKS自动化利器:VBA宏编程初探

在使用SOLIDWORKS软件宏时,用户会经常访问零件、装配体、工程图的属性,或向属性中返写字段信息。

SOLIDWORKS的属性位于两个位置:

①自定义属性

②配置特定属性;自定义属性适用于零件中仅存在单配置,或是多配置但同物料编码的情形。配置特定适用于多配置系列化零件情形,即每个配置的物料编码都不相同的情况;但这也不是完全限定的,用户可以基于自身理解和需求来实现不同效果。


属性的提取和返写可以用于以下情形:

1.提取零件中已有的多个属性,对多个属性进行合并,比如由长宽高信息合并生成规格信息;

2.通过提取到的多个属性,根据映射规则生成新的属性字段,比如由文件的类型、规格等信息生成物料编码;

3.提取结构的对应属性,对结构中的不同零件进行分类,输出不同类型的BOM;

4.在EXCEL中添加零件的各类属性字段信息,并返写到SOLIDWORKS文件中,实现批量操作;

5.批量读取配置特定属性,返写至自定义属性中;


一:如何读取文件

以下介绍在VBA宏中,如何读取文件的自定义属性、配置特定属性:


用于获取当前激活的SOLIDWORKS文件,并将获取到的激活文件赋值给swDoc变量;

代码:var1 = swDoc.CustomInfo(“物料编码”)

用于读取文件自定义属性中字段为“物料编码”的属性值(如果有),并将该值赋给var1;

代码:var2 = swDoc.GetCustomInfoValue(“默认”,“零件类型”)

用于读取文件”默认”配置特定中字段为“零件类型”的属性值(如果有),并将该值赋给var2;

用户在获取到这些所需的属性字段后,即可对这些属性字段进行输出或者是执行其他的字符串操作;执行完成后,可以将生成的新属性字段返写至SOLIDWORKS文件中;


二:激活文件返写

以下介绍在VBA宏中,如何向一个激活的文件返写属性:

用于删除自定义属性中原始字段(如果有),然后再添加该字段,并在添加该字段时,为该字段指定新的值(“0001”);

代码中的swDmCustomInfoText为该字段的变量类型,与下图中的Type对应,所有代码类型对应的关键字请查阅SOLIDWORKS API Help;


代码:

swDoc.DeleteCustomInfo2 “默认”, “零件类型”

swDoc.AddCustomInfo3(“默认”, “零件类型”, swDmCustomInfoText, “焊件”)

用于删除“默认”配置特定中的原有字段信息(“零件类型”),然后再添加该字段,及字段所对应的值(“焊件”)。


三:实例演示

接下来,我们通过一个实例来演示一个完整的过程;零件已经预先人工输入了一些属性信息,如下图所示:


读取零件的属性信息,判断打开的零件是否属于焊件结构;如果是焊件,则提取该焊件的“长”、“宽”、“高”属性,并将该长宽高信息组合,返写到零件的“规格”属性字段中;代码如下:

宏执行结果如下:


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空