Option Explicit
) Y0 @+ v5 D- e& X; f' _Dim swApp As SldWorks.SldWorks: v5 F; V& } t7 b
Dim swModel As ModelDoc2
% d$ a* S5 k, F! U& `1 R* ^: x; cDim cpm As CustomPropertyManager
+ J; m- O' l0 u4 T# D# aSub main()" ^1 v8 G2 ?( p" ]6 O. \! n# O0 L8 M
Set swApp = Application.SldWorks
) m! m& B* [: ~' x. P- q$ F+ ^Set swModel = swApp.ActiveDoc
9 _8 s2 d; ]5 o# F: XSet cpm = swModel.Extension.CustomPropertyManager("")) g1 r: ^; m1 A8 @; s7 E
Dim path As String, filename As String, partno As String, partname As String, beizhu As String* V3 n1 c! p Q3 A5 ]; r6 G4 h
path = swModel.GetPathName '獲得文件路徑和文件名稱
0 _& u- l1 k1 {' `filename = Mid$(path, InStrRev(path, "\") + 1) ' 獲得文件名稱及擴展名4 Q D6 D; k) I8 Q
filename = Left$(filename, InStrRev(filename, ".") - 1) '移除擴展名
! X/ `& X4 N! _6 l, }; v: rpartno = Left(filename, 10) ' 定義partno等于文件名的前9位( {" B A! y+ ~1 H
partname = Right(filename, Len(filename) - 10) ' 定義partname等于文件名剩下若干位
; ]( C$ P& z% e$ W$ d4 b& {! rcpm.Delete "編碼" ' 刪除自定義屬性“編碼”
7 |9 }/ T6 d0 Z+ `( ?- Ycpm.Delete "名稱" ' 刪除自定義屬性“名稱”- T% X# Y& |! U2 Z0 l- k& Y* ~
cpm.Delete "路徑" ' 刪除自定義屬性“路徑”1 o2 T- J0 s# R6 Q' W: u
cpm.Add2 "編碼", swCustomInfoText, partno ' 增加自定義屬性“編碼”
5 }) @+ K i& Y( U" Wcpm.Add2 "名稱", swCustomInfoText, partname ' 增加自定義屬性“名稱”
' ] I: v% s( X8 M'cpm.Add2 "路徑", swCustomInfoText, path '增加自定義屬性“路徑”
. a3 g" A; F0 y( \& [0 tswModel.Save ' 保存文件 w! {& o6 U H. t# i8 @
'swApp.CloseDoc (filename) ' 關閉當前激活文件- M8 H) P2 }; ?. [7 i8 q. g
End Sub: V! m& F% g9 l* v7 N+ W
————————————————————————————————————————————————————; l3 K) A2 A; Q. @
以上是一種 SW工程圖的編輯程序 添加在編輯宏內 ,在做工程圖時 可以自動生成 零件名稱 、圖號、 材料類型、數量等。希望對大家有用!!$ W W; w ~4 Z. P7 V% {3 v
|