马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 jianmuguo 于 2016-11-8 08:31 编辑
. u" m0 P; r. ^+ @ h8 d
- q; p( C# u1 n, M
执行宏前图号名称没有分离
未执行前的图号名称没有分离
9 t2 g* v: f2 h2 N) L" R# |4 u9 M
宏按钮设置
/ }, h" q- t: y j
关键是宏按钮的新建:打开工具-宏-新建-另存为对话框-自己给起名字-复制填写代码
; s) [) j/ D Q! ?: \另存为对话框9 E% }% J+ t2 `; ]8 ?2 g
/ n" g: N2 Z1 O. j" ^9 r# m: j& z代码可以复制下面的-最后点保存 B2 F: E+ `1 w& q" f B# U% m! }
下面是按钮制作/ V& u j% `3 A3 b
% L$ }8 T2 I( R5 D
' O1 v3 L7 o( A' mDim swApp As Object Dim Part As Object Dim SelMgr As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Dim Feature As Object
. R7 e9 W' g% i9 h8 x+ s+ t/ h$ {4 t" ]) h& E6 i
Dim a As Integer Dim b As String Dim m As String Dim e As String Dim k As String Dim t As String Dim c As String Dim j As Integer Dim strmat As String Dim tempvalue As String ( i _# m1 V1 ]) s$ D' I
( c8 E& T0 D( m
; Q e0 _2 ] ^
Sub main()
, k, x( J4 @& ~, W'link solidworks Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc Set SelMgr = Part.SelectionManager swApp.ActiveDoc.ActiveView.FrameState = 1 " Q; U- W3 [- E4 D
'设定变量 c = swApp.ActiveDoc.GetTitle() '零件名 2 b2 t* t+ G; S
strmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34) 4 D6 X+ ]/ j( Q7 ~, v
blnretval = Part.DeleteCustomInfo2("", "代号") blnretval = Part.DeleteCustomInfo2("", "名称") blnretval = Part.DeleteCustomInfo2("", "材料") ( ]( h7 E' \0 d% ]; n
0 u! `# ^2 |4 ?. i; ?2 Ca = InStr(c, " ") - 1 '重点:分隔标识符,这里是一个空格 If a > 0 Then k = Left(c, a) t = Left(LTrim(e), 3)
( q, V6 [& C) r' v5 Z If t = "GBT" Then e = "GB/T" + Mid(k, 4) Else e = k End If 9 X; ]1 Y% s6 a h* g7 M" }
b = Mid(c, a + 2) t = Right(c, 7) If t = ".SLDPRT" Or t = ".SLDASM" Then j = Len(b) - 7 Else j = Len(b) End If m = Left(b, j) End If ; s, W% t+ _1 Q& F! r: b
blnretval = Part.AddCustomInfo3("", "代号", swCustomInfoText, e) '代号 blnretval = Part.AddCustomInfo3("", "名称", swCustomInfoText, m) '名称 blnretval = Part.AddCustomInfo3("", "表面处理", swCustomInfoText, " ")
T$ {& R7 ]; h E7 ?End Sub
- }6 C, p2 [) X2 [2 o1 x( T: z: H/ O( |- P( A9 Y% N: |9 E9 U
; V9 @1 }3 r8 i: s
+ o0 J+ D1 _$ U# z
& h) X( I: J5 |' U0 T: M4 y
/ }1 x7 R# R9 X1 o4 x: |
执行宏后图号分离
! F& v |7 I6 P8 i4 {+ F, E( I点击按钮,执行后得到的结果。后续出工程图调用时使用。
+ ]2 ]" Y8 i0 ?* W
* v% O* s' d" B% S j3 c/ m, f% L- n) [3 F5 P. m5 c* v X
1 R1 e; v7 F3 J' n, b
|