找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 14420|回复: 7

SW宏-删除所有配置属性

[复制链接]
发表于 2019-11-18 19:12:14 | 显示全部楼层 |阅读模式
  1. Dim swApp As Object2 T: t# K& J2 t' {4 s! a- x( k
  2. " T+ r3 N! s: A" j8 F+ S% a
  3. Dim Part As Object
    % w5 I; y5 t3 S! Q% V3 J" S
  4. Dim boolstatus As Boolean7 A. T. N! y! H5 `
  5. Dim longstatus As Long, longwarnings As Long# k( |# W- X8 G7 ^) y

  6. 2 ]3 i$ G  _4 m6 g5 o- S4 |
  7. Sub main() '删除所有配置属性
    2 d+ S+ F. M" C3 g+ K6 v9 f: C& F

  8. 9 y* F& f" ^+ L7 {  }5 k& I
  9. Set swApp = Application.SldWorks
    ! f" n! y: j3 @/ A

  10. + e) B* J( L' m' Y0 M" }% m) [
  11. Set Part = swApp.ActiveDoc
    & E! d$ i! q2 e& k8 `

  12. , M$ G; r1 m8 J/ B% M
  13. CurCFGname = Part.GetConfigurationNames
    7 G; G: f' I- ?2 D$ x0 i* l, i! x
  14. ; m  r6 ]. S  Y, p5 `4 Z
  15. CurCFGnameCount = Part.GetConfigurationCount
    5 Y* b. B( U& o8 I" g

  16. 5 N8 p  S* o6 i. l* {( j0 [
  17. For i = 0 To CurCFGnameCount - 13 t1 n3 a! i; @% r$ s( u
  18. ( a9 G* M5 L% C6 D, y/ L# H" [) @# ?
  19.     Set CusPropMgr = Part.Extension.CustomPropertyManager(CurCFGname(i))
    , k0 Q: s% [0 |& W9 _( ~! Y! z

  20. , ~9 G. y3 k7 V  a: @
  21.     Vnamearr = CusPropMgr.GetNames+ a: Q( J! P9 _% u, d" Y' O
  22. 4 |* v9 \6 q4 h- x
  23.     If Not IsEmpty(Vnamearr) Then  P7 }6 c8 K: P+ N% I7 E4 X4 U
  24. 1 ?1 O' _8 T: p, w) w& c
  25.         For Each Vnamearr2 In Vnamearr
    . ?0 O# }9 m+ k

  26.   I* _' a3 B9 _. ~
  27.             bRet = Part.DeleteCustomInfo2(CurCFGname(i), Vnamearr2)9 q6 M" T. }5 h2 p, W2 ]2 L

  28. 2 U" O( ]" R1 x& L& H
  29.         Next4 T1 S/ T4 q% t# E. N" o5 x
  30. : i. i  T7 o. [
  31.     End If8 p* G; l0 u2 n6 o5 V3 k, \0 B& u  Y

  32. . R4 F9 J5 V! I# c0 w' [7 ~+ N
  33. Next' C- u& ^' N/ o/ H+ Z4 y
复制代码

' W, F. V& q4 ]0 b, a  b7 ~9 e8 r1 V) y0 O5 H; l
回复

使用道具 举报

 楼主| 发表于 2019-11-18 19:13:41 | 显示全部楼层
删除所有自定义属性5 e& ?. E: R2 o+ m
  1. Sub main() '删除自定义属性- y% ^& R% I' @6 y! J
  2. Dim swApp As Object+ u/ U: x% Q! _$ R
  3. Dim swModel2 As SldWorks.ModelDoc2! [5 f- R! L0 w$ c' `
  4. Dim vCustInfoNameArr2 As Variant
    - u# M6 s, @* O  g, {9 Z
  5. , D& z7 Q% ]$ q# t- R1 w! X$ }
  6. Set swApp = _. a" K! @9 T9 ^' _: F2 c! j8 {
  7. Application.SldWorks) `  W4 _0 @9 c" T; R# r
  8. ! p0 N+ V7 l8 V- U+ @
  9. Set swModel2 = swApp.ActiveDoc
    ) J8 b! |8 w5 ^3 O

  10. 9 F" `% O/ k% \$ L, a$ O
  11. vCustInfoNameArr2 = swModel2.GetCustomInfoNames
    ' [+ ?* R; \: w. b: U; T
  12. ' X! K6 Y1 p+ r
  13.   If Not IsEmpty(vCustInfoNameArr2) Then
    & c& {1 [; }' \) L- x: \
  14.      For Each vCustInfoName2 In vCustInfoNameArr2
    & a7 X2 {: {  r+ F8 p6 _2 j
  15.          bRet = swModel2.DeleteCustomInfo(vCustInfoName2)
    ( n5 Q9 s/ e6 b) c
  16.       Next
    : F2 u4 m& e. D
  17.   End If
    ; a- U, V0 w6 P2 Z/ |, |: Y( m2 _
  18. End Sub- {* W: ]! n. ~
复制代码
发表于 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
$ ~) s& g) i: ^( s, a5 w$ A6 }感觉楼主分享,适用于哪个版本呢?
9 j' S  r6 T5 X* ]
宏是不分版本的,适用于SW任何版本。) Y9 z8 \) H: P7 ~$ Q9 J3 \
发表于 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-12 10:30 , Processed in 0.075418 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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