QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 1241|回复: 2
收起左侧

[求助] 关于宏问题

[复制链接]
发表于 2015-8-10 11:42:31 | 显示全部楼层 |阅读模式 来自: 中国广东深圳

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
如下代码:
6 B) l" M1 b, u) F6 B) O8 \Dim swApp As Object
8 D: ^8 ~1 {! `Dim Part As Object
  A, R; ]: j5 V$ {6 N1 z1 z/ sDim boolstatus As Boolean8 E  f0 L& w' h" |) \
Dim longstatus As Long, longwarnings As Long5 [" C1 T% P( G9 J2 J, L
Sub main()
; y" b: W7 y  c; KSet swApp = Application.SldWorks  m0 K! v; [: u
Set Part = swApp.ActiveDoc
  \' ?0 n" h% [# P! O# I/ JDim swFeat As SldWorks.Feature
! ?! y  g( E1 x) s8 l: kDim swFeats() As SldWorks.Feature
" G2 {" h, D1 T' FReDim Preserve swFeats(Part.GetFeatureCount())
% r7 W8 D$ C' H/ F0 xSet swFeat = Part.FirstFeature# r8 b, G. ?. R8 I6 U9 {
Dim i As Integer
( i; Z: E1 X5 i  b5 s( |2 f For i = 0 To Part.GetFeatureCount()3 }- P& c1 m  A9 T7 w: p
   Set swFeats(i) = swFeat.GetNextFeature5 w' ~$ S% j. ~$ N  J
    If Not IsEmpty(swFeats(i)) Then
1 B  i5 i9 W5 d1 L( ]     If swFeats(i).GetTypeName = "CutListFolder" Or swFeats(i).GetTypeName = "SubWeldFolder" Then
" g7 {* x0 B: Y) S- x4 Q3 [  G      ‘SetFeatureCustomProps swFeats(i)
3 F+ C/ m! A: L# H. @     End If 9 i5 V1 N8 ~- ?
   End If8 W/ r; H  n' B" O+ ~+ n
   Set swFeat = swFeats(i)
( Y$ {& N- {# m3 n* N  Next
' h/ m5 R) o% e5 W0 TEnd Sub
$ S% g* d+ _: _9 W8 B' P" o9 C& d/ T& j3 O+ L8 _: d
问题:当 swFeats(i)=nothing时, If Not IsEmpty(swFeats(i))判断无效,还继续执行。1 Y' f% t2 d7 Q, i& L  a; S  Q- J
请高人指点一下。谢谢!!$ |& k! }& t- A- \1 b4 i* K3 k' u& ~

5 k, a2 j6 m6 o
发表于 2015-8-10 12:57:19 | 显示全部楼层 来自: 中国陕西西安
你将Dim i As Integer以及后面的语句变为:
: H/ x' ]) `1 FDo While Not swFeat Is Nothing
4 w" q% T' G( T; D8 N    If "CutListFolder" = swFeat.GetTypeName Or "SubWeldFolder" = swFeat.GetTypeName Then# v& @8 B# k7 z3 d7 q
        'SetFeatureCustomProps swFeats(i)
4 R# H/ \/ |5 [4 s. M- N+ K5 s$ N      0 v! a3 [0 c6 D- R1 k5 B
    End If
7 L, V9 a9 P. ]5 x    Set swFeat = swFeat.GetNextFeature
  P; p( ^8 @2 r) R: W4 s2 \$ z4 GLoop
5 r& I% i; ]; x' C. A试一试!

评分

参与人数 1三维币 +3 收起 理由
阿帕奇 + 3

查看全部评分

 楼主| 发表于 2015-8-10 14:22:10 | 显示全部楼层 来自: 中国广东深圳
lhl2008 发表于 2015-8-10 12:572 [: }- H8 K- H* \3 @6 C, A
你将Dim i As Integer以及后面的语句变为:& X" e8 h- I* M' G3 e
Do While Not swFeat Is Nothing
7 d2 S5 Q" A2 L! a( h  D    If "CutListFolder" = s ...
: r0 s  T( v( `9 m
精简!!; Z1 O$ k$ U8 B* X2 o
没问题了。+ {& c  G! k0 `6 l- [
谢谢!!!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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