最近使用SW出图较多,从网上搜索到图号分离的宏,还有一个通过方程式自动图号分离的方式,方式很简单,过程如下:
$ e* U0 a3 d# a0 {% D3 L1.在零件的属性里面添加宏代码到任意一个属性值中,宏代码内容只有一行,就是更改属性值;
+ w: r) K& \- c8 m% O( _( i8 F7 K S2.在方程式中新建任意一个名字的变量,变量值引用步骤1中的属性名;
2 z$ l( V4 Q3 `% S) z" H) M" B1 z3.更新文件;
" a# y# J/ j2 M' }. g: X7 J
& A. z9 |3 q* d d! w7 D经过分析,实现原理是,当文件更新或重建时,会先更新方程式,然后方程式就会将零件属性里面的宏代码运行。当属性里面的宏代码运行的时候,就将需要的属性值更改完成。附图如下。
5 f B, b; Z) q6 e宏代码:" H+ W% V% z* W4 _1 `9 ^. J
Part.Extension.CustomPropertyManager("").Set("零件代号",Left(Part.GetTitle,InStr(Part.GetTitle," ")))
/ b1 s$ P2 m: _! xPart.Extension.CustomPropertyManager("").Set("零件名称",mid(Part.GetTitle,InStr(Part.GetTitle," ")+1,Len(Part.GetTitle)-7-InStr(Part.GetTitle," ")))3 F+ c1 ^7 `5 Z; j+ E+ a: E) C7 ^; Z
8 _9 @# T5 y! q* e2 n* |9 v# w
5 y2 A4 @3 z: {4 {' y0 x) B2 v& Q5 C
注意,文件夹选项里面如果隐藏后缀名需要吧第二行代码的-7去掉。
3 y- N0 s. Z7 s( P9 c+ H! H. {$ Y9 }4 W; O" t
c P: \4 i( H+ u8 J/ p& k* B6 N& t3 `% S' K
上述步骤很有意思,也很有扩展性,比如讲宏代码写成msgbox("哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈")就会在更新的时候弹出对话框,再换成其它的宏代码就会有更有意思的事情了。
' i5 G! ]* c$ V& K3 Y所以,不要轻易从网上下载东西哦
" s* K* I* `8 m2 W& @    % `4 J$ t! C ]' s' j8 U
4 E1 A3 r8 o, c& P
' Q; u* C. o2 R# s: U! x" ?4 U3 O& E0 M3 h4 o9 t
( F& V; {8 x) z3 x. |4 Y8 j1 o* l1 ~
A" c! B7 Y; y {0 J7 {2 c, e0 J. U: h
n2 ^$ a/ M6 N7 b& C) k( H- ?( w6 j |