Option Explicit3 j2 a# x) P& F1 o, N9 o
Dim swApp As SldWorks.SldWorks
# y7 l8 L* l- \5 [" u' E# ~9 S8 I; m( J( ~Dim swModel As ModelDoc2
* M9 S; a1 i! O" s; l- R7 pDim cpm As CustomPropertyManager
i; D8 l4 d3 E9 s) I0 R/ JSub main()
1 c- J, a" h( `$ ~7 sSet swApp = Application.SldWorks
k, F0 O4 {7 I- g I& iSet swModel = swApp.ActiveDoc
" A; i) M" f8 c1 _4 QSet cpm = swModel.Extension.CustomPropertyManager("")6 ]- e/ F i4 x5 m2 w4 E: D' `) i
Dim path As String, filename As String, partno As String, partname As String, beizhu As String& Q" z, @3 c: e6 }3 Z
path = swModel.GetPathName '获得文件路径和文件名称
0 Q! n. M( t' B" V3 vfilename = Mid$(path, InStrRev(path, "\") + 1) ' 获得文件名称及扩展名9 F# o7 p2 u3 Z8 u* {, O; F
filename = Left$(filename, InStrRev(filename, ".") - 1) '移除扩展名# l1 L$ d$ `% S& c1 w1 n
partno = Left(filename, 10) ' 定义partno等于文件名的前9位0 \% W. L; N. C9 a+ n+ _
partname = Right(filename, Len(filename) - 10) ' 定义partname等于文件名剩下若干位5 X2 h4 h! ]9 y, h
cpm.Delete "编码" ' 删除自定义属性“编码”, w% J G' g+ j$ J% E3 @! P, x
cpm.Delete "名称" ' 删除自定义属性“名称”" s! n/ d4 S- \( t
cpm.Delete "路径" ' 删除自定义属性“路径”% k2 C- Q. P) O3 F) q/ H2 @
cpm.Add2 "编码", swCustomInfoText, partno ' 增加自定义属性“编码”' v7 Q% x2 W, d8 ]0 h
cpm.Add2 "名称", swCustomInfoText, partname ' 增加自定义属性“名称”8 z7 P8 q8 g! N4 y& O0 `
'cpm.Add2 "路径", swCustomInfoText, path '增加自定义属性“路径”
. A+ s& R9 z1 ^3 Z8 V8 ^! Q% P( jswModel.Save ' 保存文件$ y5 m; s4 I" { ]" E6 ?9 l- L, b
'swApp.CloseDoc (filename) ' 关闭当前激活文件" f2 Y" [, R3 n- _* r; T
End Sub+ D- X5 N$ G D; E, p
以上 是一种宏的利用 你看看吧 |