下面是分离到配置(备注:间隔符同样是空格号,并可以根据自己需求编辑)' }$ C3 Z- t3 C7 l
0 s& [2 U7 `$ [: e6 G5 Z/ w
'定义sw& Z! x4 I! L$ |9 Z9 k% m- d
+ x# D& t3 L! Y$ a/ p
( e6 `8 ]5 ]4 n- f$ @5 D8 j( n4 O P$ T8 T
Dim a As Integer
- E: @) b/ ~8 o. T' u" M0 x6 ]
1 R! N4 w( H' {Dim b As String
8 |$ \5 ?$ q+ w+ ~7 k2 I5 d# E5 O. @ j9 U8 [7 P5 Y! C l: o
Dim m As String
2 m( Q0 x( j& z# }6 E
6 @! V9 j( v& S: j8 }Dim e As String' \4 T4 O. w6 J b, ?% D. ]8 r* C
1 [0 q$ \: e& R1 i
Dim k As String
# r4 l8 _; b, H% R( {% \9 C; T6 `7 Z4 l$ j6 V) ]" L/ L8 |* q
Dim t As String
! C& V, R* `: Y* c/ I5 X8 j4 ~3 \+ q2 X" A' r! D+ H# j! Z
Dim c As String
" G! Q+ m# D! o* E: `* o5 @6 w
$ ~( u- @# e' a( D( S3 N b/ oDim j As Integer1 v% T; A9 W% P: X
+ X; v8 y9 H. z: i. R, TDim strmat As String
1 }, |8 v9 x1 X2 o; r" G+ g* i# ]1 m9 ^7 A9 u2 Z0 _( U: ]. Z
Dim tempvalue As String9 p0 }# w$ x$ m, t3 G
7 S( l/ E! p2 o8 ]9 g# E0 [$ N/ N8 K. z* N
Dim Part As Object z. l9 c1 d' j- _) i$ n/ W5 p
* O g0 B8 B! A& }( @$ L1 [
Dim swApp As SldWorks.SldWorks
" Q) y1 e% _! K$ c4 T1 o- o2 {- G8 n% M" F' B9 |. ]# K
Dim swModelDoc As SldWorks.ModelDoc2
! H- l+ ^$ j3 D" U% n
! m" F! k! X! P7 D3 Y) XDim swConfig As SldWorks.Configuration3 T/ x: e, [" R) e3 `1 q
" R+ a* u7 W4 n1 \/ T; GDim CustPropMgr As SldWorks.CustomPropertyManager& t! I( B" N+ }7 w
1 Q8 A8 u3 m* g% Z" I6 ~
Dim swModel As SldWorks.ModelDoc2
8 w0 L8 ]8 \) d3 Z7 P1 ~2 [. d9 W+ A7 T& I) k
/ q9 [4 r w6 e! {& s/ y, T* w$ g/ `6 [% ^7 ~
Sub main()- h( e' Z8 o7 L# W" `/ C9 R5 x- X+ d
% t1 z- [! L/ x; b# V( k- WSet swApp = Application.SldWorks6 i7 m8 K; ~+ I
- t, v' p; @: ] p7 t. _( `
Set swModelDoc = swApp.ActiveDoc
+ y5 m6 _9 e- X. n& n2 L8 a$ v! \& K6 k9 @& v# X
Set swConfig = swModelDoc.ConfigurationManager.ActiveConfiguration' p1 U+ p- [( o) H6 i
. s- e4 G* O. W: ~0 ]; ~0 R
Set swModel = swApp.ActiveDoc
2 l+ S" _4 y/ O$ ^7 {- J
- L! c! ]6 @6 c) k9 J7 q& DSet CustPropMgr = swModel.Extension.CustomPropertyManager+ d' J- ?0 K, o4 g; I
9 a7 \0 {* F( |(swModel.ConfigurationManager.ActiveConfiguration.Name) '配置特定延伸4 p4 s* F7 }4 E5 ]) |
7 r9 Z7 _) U- h& E& a* m' Q
4 _/ S8 I: t( C U$ D1 H
) y. a, F' Z' d+ X1 G1 y'设定变量
% C; @( [3 r) |+ o3 i6 i+ w! U3 Y9 `* X$ [% ~1 O3 D
c = swApp.ActiveDoc.GetTitle() '零件名
, J9 v( a, k3 l0 ` k. Q
* [& [7 W/ q$ ~strmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34)# C0 l+ t! `) \: k( G p
# B$ z/ i+ |, Z: d1 ~: m/ i6 ma = InStr(c, " ") - 1 '重点:分隔标识符,这里是一个空格,也可换成其他符号
% g8 A C+ Q* |& r) L- e$ y7 O+ V3 f! f A, I4 f f
If a > 0 Then! ^/ Q$ E; c7 U( o" k
" L" P* j+ W: ?# q' G) i/ Fk = Left(c, a)2 i, z! H$ I8 d+ ^
- I1 Q, ^. ?# N6 f4 Ot = Left(LTrim(e), 3)6 j5 z% e8 {: j3 K
/ Y) r9 X" {, q4 x% w) s
If t = "GBT" Then& Q; Y w/ {! `# G1 K0 K( J. c
& Y9 W7 e* `6 V) T
e = "GB/T" + Mid(k, 4)5 A6 D) l( S: O6 c7 q- k9 U# ^* h x
u, u, ], O/ l/ k" |# j, n( eElse
/ q9 Z/ ^* ~* G
5 k l- t' x* @9 E. e9 N5 o ~e = k
8 G" H( Z+ e2 V$ @) b
" z9 c+ e% t6 N+ J" uEnd If
7 @+ r& P4 H) y( Y7 f/ b a0 k
) q$ j$ v M; {9 {/ X+ sb = Mid(c, a + 2)2 Y4 M9 _4 Z. y( |' r% T- d
w, r- L/ g4 ?5 j o
t = Right(c, 7)8 ] k# T. l. r3 Y
2 y! \% E# v0 M1 @5 [/ T$ WIf t = ".SLDPRT" Or t = ".SLDASM" Or t = ".sldprt" Or t = ".sldasm" Then
1 N7 @5 ~- O S/ l( Y Y7 k& ]: a9 }" f% O/ s/ |% W: J% S4 A! _
j = Len(b) - 7 '消除后缀(区分大小写,即含4种)
" d7 z% r* y; e' b( |' m' S) N2 m6 K6 [2 S
Else$ o) Z3 K' L5 b0 u$ U
- R4 W5 I. U0 ~: w9 kj = Len(b)8 f0 y% L6 |) d0 z, ~- {
6 p& \2 \2 A4 S' T7 b0 e1 NEnd If
( D; n$ E9 x9 H# y# B" {4 ?. l) q5 L: V# ?" P8 a" ~- I- D% V
m = Left(b, j) V& e& [7 @! A1 c0 W8 s! `7 {9 ]8 m
0 d, Y+ l% Z4 `1 |( |3 }End If
' S5 K! |8 \" H5 F
) o8 C5 a8 K/ i B# w1 Y'删除栏* A$ T! B! C! K7 ~. Y e' K, z" @; h
! E& V7 m2 O6 q, O
CustPropMgr.Delete ("Number")7 T; M# C7 R7 H' t. v j {
$ i4 Z( i2 Z/ r. T1 pCustPropMgr.Delete ("作者"): A* {$ d5 r) x) w5 A2 F
7 S, P8 p% |5 T' o
CustPropMgr.Delete ("图样名称")" b; L4 k/ T1 \) R6 l2 l& F
: A* w3 w" z" |0 x/ @8 d7 g0 P
+ t6 |+ T s) T
* S: D+ H- l: r. M- z
2 G" [* L6 w s. A; f& q" m E, O# D n, Q6 r0 ^- G! {" t1 `
- N/ A0 t# A; p+ F) I'新增; U6 F* g( a0 x* D1 m
, |: ^' A2 l- y4 {% C/ x
CustPropMgr.Add2 "Number", swCustomInfoText, e
0 e$ L, o% L1 {! p- d- P5 R' ]5 o5 n# T( @
CustPropMgr.Add2 "作者", swCustomInfoText, "刘腾qq420221716"
0 f9 o- m# k' ^# w8 f# R( I; a- g$ ?) m6 p0 z7 }
CustPropMgr.Add2 "图样名称", swCustomInfoText, m
# R, f: y3 k0 f2 M" t( ?: X: v s' e ^
6 x) n6 \; G" G6 G) K4 n0 i8 B# a4 |7 X9 r0 N( ?
- o/ Y% c6 I6 l3 P* \ \
End Sub+ I8 Q" M Y0 w/ P1 w$ v+ c
& _8 l7 U% P+ s* ^% a/ m6 c |