Option Explicit
: L! O3 x" v! VDim swApp As SldWorks.SldWorks
3 U: t7 p2 x, {7 p P! TDim swModel As ModelDoc2
4 d0 i2 f; s9 M, R# r1 Y! pDim cpm As CustomPropertyManager
) X8 H* Y; O: R: s3 uSub main()9 f- J* }- ]% M8 ~
Set swApp = Application.SldWorks6 X+ f6 b( I/ i6 o' a# b% N
Set swModel = swApp.ActiveDoc
; g* D, \8 V2 P$ g: LSet cpm = swModel.Extension.CustomPropertyManager("")& ~7 X% s/ `% W% R% o
Dim path As String, filename As String, partno As String, partname As String, beizhu As String+ ]* m4 C+ `+ L1 v* n* E/ o
path = swModel.GetPathName '獲得文件路徑和文件名稱1 N. ^! q: G* b0 G4 ?1 R# u5 z
filename = Mid$(path, InStrRev(path, "\") + 1) ' 獲得文件名稱及擴展名 S' A1 f: _6 N
filename = Left$(filename, InStrRev(filename, ".") - 1) '移除擴展名$ C# v( ` ?0 i u1 G. v
partno = Left(filename, 10) ' 定義partno等于文件名的前9位
M i* _; V5 j6 K/ r% a2 p& tpartname = Right(filename, Len(filename) - 10) ' 定義partname等于文件名剩下若干位
8 v5 D" Z6 e; s1 g& P( \cpm.Delete "編碼" ' 刪除自定義屬性“編碼”" `" u' |/ ?1 k4 ^1 {
cpm.Delete "名稱" ' 刪除自定義屬性“名稱”, ~$ S. g+ b; W9 C
cpm.Delete "路徑" ' 刪除自定義屬性“路徑”1 `% {- Q" Q, Q/ e$ k2 d& n
cpm.Add2 "編碼", swCustomInfoText, partno ' 增加自定義屬性“編碼”
L, c8 B. P: `8 \0 ?' a5 hcpm.Add2 "名稱", swCustomInfoText, partname ' 增加自定義屬性“名稱”
% @' G+ C$ q8 ^3 |'cpm.Add2 "路徑", swCustomInfoText, path '增加自定義屬性“路徑”1 G; N1 h8 s, a6 c2 z" t
swModel.Save ' 保存文件
8 I$ q4 J7 W- a# g'swApp.CloseDoc (filename) ' 關閉當前激活文件
7 T' ~2 F5 @& e; G/ g) MEnd Sub
2 h9 K! ~6 d+ e4 H% i以上 是一種宏的利用 你看看吧 |