下面是分离到配置(备注:间隔符同样是空格号,并可以根据自己需求编辑)" G: o+ i8 _# z1 j0 B7 @
4 D4 g2 H2 G9 d; g4 r* @
'定义sw
' h; S7 K! [# }/ U7 z) A
: @. L4 d8 G) R
) o& W: Q! a4 W T+ j$ K! [& `: H
Dim a As Integer' ~9 H: @1 g4 ^: V
7 w" y4 V- _) j$ h" n
Dim b As String0 a; r. b& o" k0 E0 j
( `( Y+ O4 |( ~: Z
Dim m As String( C% A/ o9 B! F; H, t7 m
$ ?4 ]* L9 L( i! W$ L3 CDim e As String
. d$ o' S( R/ i5 X ^* I; k
& |3 q7 ^5 s0 J3 t- U( SDim k As String- k' _" K! Z; b& M3 Y& A! u
Z: F+ I1 U+ u" u; _Dim t As String+ r. P7 @; U/ R5 q9 O
, w& u* y* D$ J! o1 Y
Dim c As String2 q# N- g9 ^3 j, j# R7 y
2 @& k8 t2 x( R+ x( |$ J- g
Dim j As Integer7 J& U0 F6 ?2 i, U4 p
G/ ~ s' t3 P+ x, G& [ w b% JDim strmat As String# K, c5 P: k; @) A# G1 L; C
- \: a& K2 o5 M
Dim tempvalue As String
3 @% o% Z- Y3 D7 W$ Q6 L2 A" v4 j
Dim Part As Object
* }. U! ^* o6 `, B- c. n: o( M- ]' u# L4 T, p
Dim swApp As SldWorks.SldWorks
4 Z+ p1 |2 p0 y! ]" |% @
7 E( @# N+ b8 \& a l+ DDim swModelDoc As SldWorks.ModelDoc2
- f! n; A* q. L9 p5 ?
' d- _( m1 R6 S2 v1 _Dim swConfig As SldWorks.Configuration
) e* l! M5 b4 h* R
6 }# |6 w4 v3 tDim CustPropMgr As SldWorks.CustomPropertyManager
8 F+ _7 } Z5 B0 w- E, D) Y. ^" |+ Z" f! ]) {! F/ Y! j4 W( o
Dim swModel As SldWorks.ModelDoc21 S7 p8 i6 G( x! @2 T M; V
/ p0 P y; e! a- u1 a* K
( A$ _- x7 k) H' C: F- _! z1 `9 F @1 F% n! P( f
Sub main()
3 V. c6 P( M% B% W3 F
1 R/ [" K6 X/ {7 S, O% H. i6 |Set swApp = Application.SldWorks3 @# i9 h( Q* g5 u' ]# E
: O. m4 r5 H( P6 `
Set swModelDoc = swApp.ActiveDoc
# B8 Q1 J! @5 p" u: T6 R) E3 D* t t! A, N
Set swConfig = swModelDoc.ConfigurationManager.ActiveConfiguration
0 q0 ]. Q, o& ?& p2 s0 q3 C& w$ q- d1 p3 I& @; X5 d
Set swModel = swApp.ActiveDoc
4 k/ b% d7 X3 ~) H, `2 e# z3 _" W+ Y/ ]* T- p( ?
Set CustPropMgr = swModel.Extension.CustomPropertyManager
' K$ k( {5 X) V+ h, ]8 T! O2 f0 {: R! E" Q3 |, E/ ]
(swModel.ConfigurationManager.ActiveConfiguration.Name) '配置特定延伸# ?4 | q3 l0 P4 @+ \- V6 x
: f1 x9 M' o5 J5 x6 R+ ?6 v
}- A" o+ b# A; J$ [; ^1 s6 t0 p4 {/ ~! I* ~" V! [+ @
'设定变量1 S ^' V# b5 I! j1 ?
% `$ q) h& H' F+ z. W V) [" bc = swApp.ActiveDoc.GetTitle() '零件名
1 R" L/ R! Z. ^! T6 d' j8 g
2 K& l7 C/ X; s/ }0 ~/ Qstrmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34)) Q5 L. H- p; d/ [, U
6 R# B! F# R( u1 {+ ?a = InStr(c, " ") - 1 '重点:分隔标识符,这里是一个空格,也可换成其他符号
! A5 q7 f" m7 O* ~! J9 }6 b3 z7 c/ |6 d) c0 W% }0 ]
If a > 0 Then: k; t3 X! y0 B# E
' a0 p& ?1 d/ Y, y) O+ Hk = Left(c, a)* V6 `7 q% Y. S* E0 l$ _8 S8 R
* _- y" o: }( ?# x4 D" C8 ~t = Left(LTrim(e), 3)* O4 `9 g/ ^- [ |
- _2 Q1 S p7 B" [& m) I
If t = "GBT" Then
, u6 z" @9 @- k' J; e( T. b$ x- F( C' G: I
e = "GB/T" + Mid(k, 4)+ d6 j4 h1 _$ Y2 R% x, U0 ~8 p
+ S+ T9 H( Y9 O* T* DElse
9 k$ D+ a) f8 W. [; _1 h) L# b8 e3 H) z; i
e = k5 S+ H: U6 w( G% f: N$ N4 O2 b3 _
% J( E, {/ j1 o* }9 m9 h; KEnd If/ i6 A' [- U4 |. J) i
1 e/ }0 P- j5 g; Vb = Mid(c, a + 2)
0 F- z) W. }; E/ v& l" Z7 L. M* }, ~2 F5 l( _/ A
t = Right(c, 7)5 T9 a5 v- O; O: ?4 h
' y; b! T- ?7 c% U# d* V
If t = ".SLDPRT" Or t = ".SLDASM" Or t = ".sldprt" Or t = ".sldasm" Then5 S) M5 @ H( C9 N" W3 N) Y& ^
8 q4 J! T3 d1 A; Y
j = Len(b) - 7 '消除后缀(区分大小写,即含4种)- w& z4 w- C' y3 s
* t5 B/ ]2 _) {. z+ s# D+ p; A$ D
Else. ?/ d. p& X# ]( F- v/ V! d
& s5 v! K+ T8 H. w& V& ~; M7 i
j = Len(b)& U; y+ {% ]) ^# b
/ S3 l P- m# k) |& }! X0 N3 O# Q; f5 MEnd If1 F& I4 Y# G; R
0 w5 k! Y' Q% ~% I" n0 A' j
m = Left(b, j)
/ l) Q, g) x7 s7 E( ?$ d9 r/ v ?0 J2 r$ A
End If
) N- _1 @8 c# ~$ O9 @4 {! m* r# K" ~# ]6 J3 _. {
'删除栏
B* m* L6 X& x% { z
: Z( m+ N* v6 a! f" A; l: u& TCustPropMgr.Delete ("Number")2 v& e3 h8 {3 e- i5 u' w' l% m
5 q; V$ I5 D+ r& O; C% R+ J
CustPropMgr.Delete ("作者")) {; y" f. }* `3 H- d, M
3 N) E( w9 E8 @1 R1 P1 k2 F1 ]
CustPropMgr.Delete ("图样名称")
3 Q/ d. c1 s* V8 I7 \! T3 i1 h, B- z2 p
% X' r! ^$ B- S6 j0 W! \% [9 p* O5 m& t* U+ j" l
2 M5 V0 K2 K' |1 s5 _2 k9 j( r0 s" [
5 ` D' S7 T" b& @/ L5 V9 U( n1 E5 ]# v% u* t; M8 a x
'新增
B4 T4 t) J! x4 E" U3 c( \: w, K% y. `
CustPropMgr.Add2 "Number", swCustomInfoText, e5 t6 ]: [( c. I4 F+ C
- `* x/ L7 r% W$ oCustPropMgr.Add2 "作者", swCustomInfoText, "刘腾qq420221716"$ X; c, }! }6 M+ Z
- F1 P7 ]: ?2 R3 j8 [3 w
CustPropMgr.Add2 "图样名称", swCustomInfoText, m v2 D h: @ i8 U/ V7 `: b, ~ k
: q! D; x8 x& r# b
$ s# q! S0 _/ c$ e
' p x. L' q [3 L/ E' W$ p* Y/ H) q4 O e$ F- |
End Sub9 i8 J* u$ `, p* A
5 s7 ]5 v% [2 Q, `/ ?0 R5 K
|