機械社區(qū)

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 12780|回復: 7
打印 上一主題 下一主題

SW宏-刪除所有配置屬性

[復制鏈接]
跳轉到指定樓層
1#
發(fā)表于 2019-11-18 19:12:14 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. Dim swApp As Object
    " e9 }6 P6 a+ r$ i8 b+ T1 B( M
  2. # u- M6 O) W" C' {2 i
  3. Dim Part As Object- U8 U+ b& z3 C  V( g
  4. Dim boolstatus As Boolean. ?8 `+ s2 U# V* @1 L: H0 [$ x# A9 ^% Q
  5. Dim longstatus As Long, longwarnings As Long
    # O* Y0 I) N& ^

  6. 7 N6 C4 A  |. a2 C+ S, ~
  7. Sub main() '刪除所有配置屬性
    4 v  O/ U, s# }. k& M1 m

  8. ! O, D" g0 Y5 @. `2 Z
  9. Set swApp = Application.SldWorks
    9 \3 x, n1 z6 C
  10. 1 P( }' Y+ b; t" {5 Y0 X
  11. Set Part = swApp.ActiveDoc3 l% s2 ^# x& ?8 ?  C+ B& [& e5 B

  12. . V+ I, F' \: ~4 l- U2 p$ N6 C0 {
  13. CurCFGname = Part.GetConfigurationNames3 k' z+ g$ ]3 d/ o5 e; j/ A$ _( j

  14. % s& N6 @4 k. Q
  15. CurCFGnameCount = Part.GetConfigurationCount
    9 e6 w: k( }# d, G4 e

  16. 1 c0 o  g/ }7 k2 M: m, T
  17. For i = 0 To CurCFGnameCount - 1
    6 @3 d3 R6 R* ^6 b

  18. 1 E! ^$ b& x! a$ j
  19.     Set CusPropMgr = Part.Extension.CustomPropertyManager(CurCFGname(i))
    # ~1 F% L; M- Y8 D; E+ G

  20. 0 h/ V8 ]' B1 j% N; O: b# o9 F
  21.     Vnamearr = CusPropMgr.GetNames$ D, Y' a& W' U! {" t& L0 e5 E
  22. $ T1 k- ?4 p. Z! W) ?3 l( A+ J* n
  23.     If Not IsEmpty(Vnamearr) Then; `4 c4 V' X' J- f7 U1 K* x
  24. - C0 a( l5 J  e# x. y. c+ r+ ^4 n
  25.         For Each Vnamearr2 In Vnamearr2 j9 D% R! B" h- F
  26. + ^. w" [0 Q2 r7 W. ~. E* U
  27.             bRet = Part.DeleteCustomInfo2(CurCFGname(i), Vnamearr2)1 m8 R: d9 W1 ^
  28. 3 E9 \1 ^  ~1 J1 _$ o
  29.         Next' I* A+ E% p( ?7 q

  30. % s$ {# H! W7 v! ?
  31.     End If2 Q+ _! s* K' \9 W( ?
  32. 4 J. f: |/ f' Y2 W4 L% w
  33. Next; g9 d, _: S, \3 z
復制代碼

" t* l$ i/ `) x( W, f' f6 i4 x4 p6 u4 m* N/ z" `+ {. ]5 b: F
回復

使用道具 舉報

2#
 樓主| 發(fā)表于 2019-11-18 19:13:41 | 只看該作者
刪除所有自定義屬性
- \: i. ?4 @/ m8 f& f8 x0 T
  1. Sub main() '刪除自定義屬性& |0 R$ `' y; ], y4 m
  2. Dim swApp As Object
    5 a. X2 @8 c" L6 e: U3 A: e
  3. Dim swModel2 As SldWorks.ModelDoc25 n; P; N$ k: o, t" @) K
  4. Dim vCustInfoNameArr2 As Variant& ?9 o3 s! n1 t% N
  5. 2 m7 Q! i/ k) R; d5 M9 z4 y4 U5 A
  6. Set swApp = _
    " N+ f2 [. l+ T
  7. Application.SldWorks: n: l. q2 w% |9 k: S

  8. 3 D5 N5 ?+ C% [
  9. Set swModel2 = swApp.ActiveDoc: S1 p2 Q" p  a' e
  10. , p8 f' @4 g; m* J# u0 V" V/ x
  11. vCustInfoNameArr2 = swModel2.GetCustomInfoNames
    # w8 d. s1 }! K+ W2 K. G
  12. & @) ?7 ^$ @$ A  U: M7 z
  13.   If Not IsEmpty(vCustInfoNameArr2) Then" S# U& F8 H0 i; L" {/ ^
  14.      For Each vCustInfoName2 In vCustInfoNameArr2
    3 N, p, @. B2 ]8 y" t
  15.          bRet = swModel2.DeleteCustomInfo(vCustInfoName2)) s2 R7 K3 l8 L$ k$ z, M& n
  16.       Next5 X( a" O* L! ?. D, E
  17.   End If
    , G1 x2 h' S. e6 A3 U7 Y0 u* Z8 |& e
  18. End Sub4 s+ _+ E# b9 R9 P% q; n
復制代碼
回復 支持 反對

使用道具 舉報

3#
發(fā)表于 2019-11-19 08:57:41 | 只看該作者
謝謝樓主,保存先,后面應該有用
回復 支持 反對

使用道具 舉報

4#
發(fā)表于 2019-11-19 18:11:22 | 只看該作者
感覺樓主分享,適用于哪個版本呢?

點評

宏是不分版本的,適用于SW任何版本。  詳情 回復 發(fā)表于 2019-11-19 22:46
回復 支持 反對

使用道具 舉報

5#
 樓主| 發(fā)表于 2019-11-19 22:46:12 | 只看該作者
遠祥 發(fā)表于 2019-11-19 18:11
6 R" G- ^9 X/ v) X: K7 {$ @感覺樓主分享,適用于哪個版本呢?

: I5 a# p2 e  l: C7 A宏是不分版本的,適用于SW任何版本。
: y7 X  f* Z$ n( y' E2 f
回復 支持 反對

使用道具 舉報

6#
發(fā)表于 2020-2-5 00:07:20 | 只看該作者
那位麻煩告訴一下,我復制這些代碼怎么變了內容?
回復 支持 反對

使用道具 舉報

7#
發(fā)表于 2021-7-26 15:08:55 | 只看該作者
這兩個宏可以合并嘛
回復 支持 反對

使用道具 舉報

8#
發(fā)表于 2023-10-7 11:28:19 | 只看該作者
牛,今天幫我解決實際問題了,謝謝
回復 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規(guī)則

小黑屋|手機版|Archiver|機械社區(qū) ( 京ICP備10217105號-1,京ICP證050210號,浙公網安備33038202004372號 )

GMT+8, 2024-11-16 09:46 , Processed in 0.050396 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表