QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

[求助] 关于宏问题

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

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

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

x
如下代码:
6 G0 J; e9 U7 F  RDim swApp As Object
9 ]3 d3 ?1 E5 HDim Part As Object/ \+ c5 B- v4 f4 r
Dim boolstatus As Boolean
3 j2 d! Y2 ^- CDim longstatus As Long, longwarnings As Long
5 x% d3 Q1 q" n5 A6 oSub main(): Z9 u! U$ [9 _0 s0 s0 F/ O4 T/ M
Set swApp = Application.SldWorks7 u: a' N8 `& o# b0 R6 Z* g
Set Part = swApp.ActiveDoc3 s7 E) n2 F# U7 W# U$ M2 T
Dim swFeat As SldWorks.Feature5 l0 o: d1 K; X% b" l4 P2 i
Dim swFeats() As SldWorks.Feature2 r; B) u: m% ]! V# E) R. f
ReDim Preserve swFeats(Part.GetFeatureCount())
8 x. E, ?+ L  F# k6 G% T0 x5 o4 g5 ESet swFeat = Part.FirstFeature  l$ R  q6 ~8 B) a5 o
Dim i As Integer
7 R3 R6 M$ }2 h1 V4 U For i = 0 To Part.GetFeatureCount()
1 X& l$ N; d" e6 r' u8 ?; _   Set swFeats(i) = swFeat.GetNextFeature- o3 b  z. ^, b7 M9 Y
    If Not IsEmpty(swFeats(i)) Then
  u) k/ s# ]) Z1 r7 v$ d. H! \     If swFeats(i).GetTypeName = "CutListFolder" Or swFeats(i).GetTypeName = "SubWeldFolder" Then8 y1 q7 n. s5 h8 G) @$ o; d! U$ i
      ‘SetFeatureCustomProps swFeats(i)
0 |7 o' w6 _6 T9 S" o     End If 2 [7 ^, A% ]( ?. [( I8 H8 G4 J
   End If
8 q6 H4 F, c' y$ ~2 K' ^2 B   Set swFeat = swFeats(i)
/ `; X5 }# f/ k% |. a1 }3 m$ H  Next" r/ j; l. p" I4 v1 Y6 a% Q
End Sub9 F, o& L% D; p
: ?1 g3 M9 L3 D
问题:当 swFeats(i)=nothing时, If Not IsEmpty(swFeats(i))判断无效,还继续执行。
) Z! [0 S  L- t. J9 y1 ^$ T4 h8 a* T请高人指点一下。谢谢!!
: @( c6 G: a& U4 s6 U. l8 Y- B6 j, K8 J
发表于 2015-8-10 12:57:19 | 显示全部楼层 来自: 中国陕西西安
你将Dim i As Integer以及后面的语句变为:' x- A2 O, m3 w- [9 ^0 Y% h
Do While Not swFeat Is Nothing1 T4 w& }# w. ?
    If "CutListFolder" = swFeat.GetTypeName Or "SubWeldFolder" = swFeat.GetTypeName Then3 ~1 h( n, ]0 z) B; W$ P3 _0 v
        'SetFeatureCustomProps swFeats(i)- z( h# `4 ?6 s% S% `
      
" x; U( g8 x8 h+ M- ^, f! @7 [' `    End If0 w& Z  L- G: v9 c* X+ t6 G
    Set swFeat = swFeat.GetNextFeature: p1 X9 @. D$ T
Loop
7 T: |0 ]6 {/ W试一试!

评分

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

查看全部评分

 楼主| 发表于 2015-8-10 14:22:10 | 显示全部楼层 来自: 中国广东深圳
lhl2008 发表于 2015-8-10 12:57
5 a+ H( K; c8 w你将Dim i As Integer以及后面的语句变为:; c& K5 ]" h& X8 T! W6 R& C
Do While Not swFeat Is Nothing
8 l8 \) C$ F# l6 U    If "CutListFolder" = s ...

3 n- f8 o" {' A$ K精简!!
& h+ ], Z+ X2 {4 ^; Z$ w- m没问题了。
" ^0 G) x* {' T9 |2 @' l$ _+ z* c谢谢!!!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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