小人Mτ 发表于 2018-11-25 17:24:17

SW宏内嵌和快速运行

最近使用SW出图较多,从网上搜索到图号分离的宏,还有一个通过方程式自动图号分离的方式,方式很简单,过程如下:
1.在零件的属性里面添加宏代码到任意一个属性值中,宏代码内容只有一行,就是更改属性值;
2.在方程式中新建任意一个名字的变量,变量值引用步骤1中的属性名;
3.更新文件;

经过分析,实现原理是,当文件更新或重建时,会先更新方程式,然后方程式就会将零件属性里面的宏代码运行。当属性里面的宏代码运行的时候,就将需要的属性值更改完成。附图如下。
宏代码:
Part.Extension.CustomPropertyManager("").Set("零件代号",Left(Part.GetTitle,InStr(Part.GetTitle," ")))
Part.Extension.CustomPropertyManager("").Set("零件名称",mid(Part.GetTitle,InStr(Part.GetTitle," ")+1,Len(Part.GetTitle)-7-InStr(Part.GetTitle," ")))


注意,文件夹选项里面如果隐藏后缀名需要吧第二行代码的-7去掉。



上述步骤很有意思,也很有扩展性,比如讲宏代码写成msgbox("哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈")就会在更新的时候弹出对话框,再换成其它的宏代码就会有更有意思的事情了。
所以,不要轻易从网上下载东西哦
http://www.cmiw.cn/static/image/smiley/default/lol.gifhttp://www.cmiw.cn/static/image/smiley/default/lol.gifhttp://www.cmiw.cn/static/image/smiley/default/lol.gifhttp://www.cmiw.cn/static/image/smiley/default/lol.gifhttp://www.cmiw.cn/static/image/smiley/default/lol.gif







墨青zalon 发表于 2018-11-25 22:09:17

这样也行吗,看起来很简单,我的都是几十行代码的宏,每次需要读取零件属性才能进行图号分离的

renpp0167 发表于 2018-11-26 08:44:59

我用你的方法试验了一下,并没有起作用啊,更新文件,保存退出再打开,试了好多次也没有生效呢。
不知道问题是出在哪里?没有用过这样的功能,第一次尝试。

凸轮机械手 发表于 2018-11-26 08:48:08

没用过宏......

小人Mτ 发表于 2018-12-4 12:04:14

renpp0167 发表于 2018-11-26 08:44
我用你的方法试验了一下,并没有起作用啊,更新文件,保存退出再打开,试了好多次也没有生效呢。
不知道问 ...


这个文件试试,这是我用的,版本2017


renpp0167 发表于 2018-12-5 07:36:09

咦,怪事呢,用你的文件就可以更新。我自己设计的文件就不能自动。我的模板文件有问题?

补充内容 (2018-12-5 16:10):
我上次就是直接复制的你的代码。这次用你的文件打开发现好使,我就把你文件里的代码拷进我的文件里了。结果竟然还是不好使!我要疯了,你的是2018版本吗?

怕瓦落地2011 发表于 2018-12-14 11:40:22

先收藏了

怕瓦落地2011 发表于 2018-12-14 11:44:36

此宏装配体无效

chenglida2018 发表于 2019-2-14 21:08:04

谢谢楼主

jfcfree 发表于 2019-2-20 13:52:27

10版的SW能用吗
页: [1] 2 3
查看完整版本: SW宏内嵌和快速运行