找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 14439|回复: 7

SW宏-删除所有配置属性

[复制链接]
发表于 2019-11-18 19:12:14 | 显示全部楼层 |阅读模式
  1. Dim swApp As Object" A, S6 e, ?# D  @3 ~/ A$ D
  2. 6 D) b2 t) S8 O5 D
  3. Dim Part As Object
    5 V7 v6 j9 d# y" F3 ~6 U
  4. Dim boolstatus As Boolean- [1 [, N9 f* D. t, r* J: v7 |
  5. Dim longstatus As Long, longwarnings As Long. t5 `' A: y7 y$ w( g. N

  6. 0 ~( D! `& b# f+ p) b7 e7 @. E- o
  7. Sub main() '删除所有配置属性
    5 C! M; X% I5 h: Q. V9 ]

  8. 1 M1 P4 l+ ^* {  R/ T
  9. Set swApp = Application.SldWorks' J6 W4 b7 a0 ^2 ~

  10. % E  V8 K4 Q: H9 y1 l
  11. Set Part = swApp.ActiveDoc
    3 a. {2 {% r3 H3 K* v

  12.   }. t' n! O$ d
  13. CurCFGname = Part.GetConfigurationNames. s# s) X, B. |9 v$ l
  14. " O0 i! g: i/ r# J) m7 t8 Z6 Y
  15. CurCFGnameCount = Part.GetConfigurationCount; o7 o( i  H, Z7 c1 R

  16. + y( u) r/ U  t, Z! @
  17. For i = 0 To CurCFGnameCount - 14 R( v& C1 r4 x8 r

  18. / Q5 |* L: D/ @- P
  19.     Set CusPropMgr = Part.Extension.CustomPropertyManager(CurCFGname(i))
    : [% e# G! o2 I
  20. . a2 C/ {9 A' G" P7 U
  21.     Vnamearr = CusPropMgr.GetNames
    " _# z7 w  E5 I- S

  22. * L7 O: t# l  L  W
  23.     If Not IsEmpty(Vnamearr) Then+ |2 y; |' M# d2 u- S

  24. 2 p" U: G2 F5 O
  25.         For Each Vnamearr2 In Vnamearr
    ) P+ X6 K1 r6 j; M( n5 Z

  26. 9 U; t/ _& P) G0 {( B
  27.             bRet = Part.DeleteCustomInfo2(CurCFGname(i), Vnamearr2)' X2 n1 [6 O: k( O3 @
  28. ( D0 M- y* K# K5 ~; D# Y! m0 Q
  29.         Next9 E' ~: L& Y0 W0 B, C

  30. . g' E2 p' x1 Z! p5 [" t/ d
  31.     End If0 C7 l% z" D5 S. f% o' N
  32. * z, R9 r( k+ `) F
  33. Next4 x  c; q! z$ t0 b
复制代码
5 Y' @, M( D! U

8 E. G3 G9 V# u* d' s1 c
回复

使用道具 举报

 楼主| 发表于 2019-11-18 19:13:41 | 显示全部楼层
删除所有自定义属性
- G- r8 L  Z1 z, r
  1. Sub main() '删除自定义属性
    1 G$ t/ l7 K" |6 N5 h, R: j( Q
  2. Dim swApp As Object
    1 k) T. w9 r( T3 a. [! a
  3. Dim swModel2 As SldWorks.ModelDoc2
    % A; ~* @4 q" \8 I$ Q
  4. Dim vCustInfoNameArr2 As Variant
    ( u! h- V4 V2 d2 r" ^: E! _

  5. 3 j3 Q0 T8 R% U5 ]5 Y" A
  6. Set swApp = _
    6 A' x" N9 f8 e: w" j+ N5 o
  7. Application.SldWorks
    0 r4 F, _  G+ J4 X
  8. - v6 a: ^5 t( H$ [8 |& V! ]
  9. Set swModel2 = swApp.ActiveDoc
    ; U# E5 x7 F- ?. C$ R4 w1 h! I
  10. ' _& B. U* h! x
  11. vCustInfoNameArr2 = swModel2.GetCustomInfoNames
    - t  S* R7 t% U) _" l# n
  12. . }9 _2 B* L4 K; M3 r( N+ Z
  13.   If Not IsEmpty(vCustInfoNameArr2) Then2 [! i8 p3 I' I5 c; S
  14.      For Each vCustInfoName2 In vCustInfoNameArr2* {! ~  D: ]# K, C# a
  15.          bRet = swModel2.DeleteCustomInfo(vCustInfoName2)2 J) x; `& z8 O3 g
  16.       Next# J7 B! N$ h, u6 d1 y
  17.   End If
    5 K) p: I' e& A: z8 i5 \) ^7 R: \
  18. End Sub
    9 e  ]5 s* W+ A* k0 b
复制代码
发表于 2019-11-19 08:57:41 | 显示全部楼层
谢谢楼主,保存先,后面应该有用
发表于 2019-11-19 18:11:22 | 显示全部楼层
感觉楼主分享,适用于哪个版本呢?

点评

宏是不分版本的,适用于SW任何版本。  详情 回复 发表于 2019-11-19 22:46
 楼主| 发表于 2019-11-19 22:46:12 | 显示全部楼层
远祥 发表于 2019-11-19 18:11, q7 a; K/ ~# o: p. U, I
感觉楼主分享,适用于哪个版本呢?

2 G  a9 Z0 n) B宏是不分版本的,适用于SW任何版本。0 l8 U1 ]' U2 `3 j. q3 r4 T
发表于 2020-2-5 00:07:20 | 显示全部楼层
那位麻烦告诉一下,我复制这些代码怎么变了内容?
发表于 2021-7-26 15:08:55 | 显示全部楼层
这两个宏可以合并嘛
发表于 2023-10-7 11:28:19 | 显示全部楼层
牛,今天帮我解决实际问题了,谢谢
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-7-15 03:31 , Processed in 0.060567 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表