机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 13706|回复: 7
打印 上一主题 下一主题

SW宏-删除所有配置属性

[复制链接]
跳转到指定楼层
1#
发表于 2019-11-18 19:12:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. Dim swApp As Object
    / L7 S7 G& t" E2 V/ ^
  2. 3 s' X5 X& ]  n
  3. Dim Part As Object8 j! X: t+ K! Y/ [
  4. Dim boolstatus As Boolean
    5 k6 v+ p3 P" s- I" h
  5. Dim longstatus As Long, longwarnings As Long
    ; @1 ~1 u  n) D& C

  6. 8 c$ c$ z& l7 M5 i/ Y. H
  7. Sub main() '删除所有配置属性
    ' g0 `+ ?/ K; u# v$ @( Q9 ?# D

  8. ) Q9 ]/ [9 w. g+ A. g4 @' W
  9. Set swApp = Application.SldWorks
    $ ]6 D  P: n6 l1 Q
  10. & F) j# `/ L) q( t% ?
  11. Set Part = swApp.ActiveDoc6 B- _, X- O6 L. L% ^" K/ Z3 u4 i
  12. 1 G- u4 p* X7 }, d4 o4 L2 [
  13. CurCFGname = Part.GetConfigurationNames- a+ K* o1 E: T, z9 D9 R) }7 ?3 S

  14. ' [$ s1 X% ]# l, t) s
  15. CurCFGnameCount = Part.GetConfigurationCount
    3 e6 i; s& [  v8 t/ K9 Z
  16. 5 T4 C( |5 U2 ?2 j7 F+ O
  17. For i = 0 To CurCFGnameCount - 1
    8 @5 W# [8 o% ~/ J) @

  18. 1 r. f. K. u! z  {
  19.     Set CusPropMgr = Part.Extension.CustomPropertyManager(CurCFGname(i))
    8 e9 A  ^, T5 V0 w/ w! O
  20. % Q% A2 z  T; j
  21.     Vnamearr = CusPropMgr.GetNames
    0 x4 g0 V' R! H4 [

  22. 3 r" g# ^6 I3 v, _5 c8 \8 A7 g
  23.     If Not IsEmpty(Vnamearr) Then
    % H8 c4 j# ]$ c* g% u, p0 |
  24. * U( ~: o7 n8 B9 V. P0 _
  25.         For Each Vnamearr2 In Vnamearr5 k# w* _6 X$ q0 @9 \( o

  26. 6 X9 j, |' w) ^
  27.             bRet = Part.DeleteCustomInfo2(CurCFGname(i), Vnamearr2)
    % U$ ]0 h/ W) Z; @# R
  28. & G; q3 ?7 B; S" u
  29.         Next
    0 b/ U( n7 r8 C' y; d, c4 ]
  30. * a, ~" h$ m$ G% H: S
  31.     End If
      k3 I7 {! S# }& |% o) ?

  32. 3 o1 Z- A- X3 q! d" b4 v
  33. Next" y; g# S1 z$ {; T+ n
复制代码

6 t7 x% `8 @! a; {: Z2 j
+ C% }6 @# x$ u
回复

使用道具 举报

2#
 楼主| 发表于 2019-11-18 19:13:41 | 只看该作者
删除所有自定义属性& c  d+ T$ V/ Y! P" d, G" v7 l
  1. Sub main() '删除自定义属性) T" N, v! s/ m7 p, j
  2. Dim swApp As Object
    . w4 E( z$ N) O7 r
  3. Dim swModel2 As SldWorks.ModelDoc2; w; q. ~  }, ^8 [/ J" i: F
  4. Dim vCustInfoNameArr2 As Variant7 g# ?: S5 G- x  o! V; k9 K
  5.   i! c  g* z, f4 Y; h% x1 R
  6. Set swApp = _
    # a3 g9 U2 t7 P8 A
  7. Application.SldWorks
    ' _$ q/ p3 Z/ S  m% O; q- s
  8. : N1 ]9 R$ Y- t! ]. R# |$ K# b4 Z, l" t
  9. Set swModel2 = swApp.ActiveDoc. D" g# _( v5 }

  10. 0 l& A5 i' @& S, h! X
  11. vCustInfoNameArr2 = swModel2.GetCustomInfoNames
      i0 T. q& ?8 y2 H

  12. 2 l6 `; e: d1 P" \  n+ Y
  13.   If Not IsEmpty(vCustInfoNameArr2) Then0 H' b! h/ B& t1 G. Y/ h
  14.      For Each vCustInfoName2 In vCustInfoNameArr2
    , ]7 S, }5 @, C& l0 g
  15.          bRet = swModel2.DeleteCustomInfo(vCustInfoName2)
    / {! S7 I1 _1 I1 n
  16.       Next
    5 v4 m6 U4 m8 d% ?# ?0 s
  17.   End If
    7 U" r9 B0 V7 d1 R6 K, f
  18. End Sub
    $ O. A7 W: C/ R! t" ~- T' W; C
复制代码
回复 支持 反对

使用道具 举报

3#
发表于 2019-11-19 08:57:41 | 只看该作者
谢谢楼主,保存先,后面应该有用
回复 支持 反对

使用道具 举报

4#
发表于 2019-11-19 18:11:22 | 只看该作者
感觉楼主分享,适用于哪个版本呢?

点评

宏是不分版本的,适用于SW任何版本。  详情 回复 发表于 2019-11-19 22:46
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2019-11-19 22:46:12 | 只看该作者
远祥 发表于 2019-11-19 18:11
2 @* |: W0 f* e! j* Y" @感觉楼主分享,适用于哪个版本呢?
' ?  J" M" T# J2 t9 d' V* i7 Z
宏是不分版本的,适用于SW任何版本。$ Y$ |; ]: i8 |& b- M7 t
回复 支持 反对

使用道具 举报

6#
发表于 2020-2-5 00:07:20 | 只看该作者
那位麻烦告诉一下,我复制这些代码怎么变了内容?
回复 支持 反对

使用道具 举报

7#
发表于 2021-7-26 15:08:55 | 只看该作者
这两个宏可以合并嘛
回复 支持 反对

使用道具 举报

8#
发表于 2023-10-7 11:28:19 | 只看该作者
牛,今天帮我解决实际问题了,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

GMT+8, 2025-4-3 14:07 , Processed in 0.056255 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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