[VBA] 怎么样已有的选择集中移除掉一些内容
请问:现有的选择集中有一些实体内容,我想用一个for each ……next 从中判断把不符合条件的内容从选择集中移除掉,应该怎么操作?
9 For k = 0 To SelectionSet.Count - 1
If (你的条件) Then
ReDim deleteObj(0) As Object
Set deleteObj(0) = SelectionSet.Item(k)
SelectionSet.RemoveItems deleteObj
GoTo 9
End If
Next
呵呵!大体是这样的...你看看吧^_^
谢谢啦!
Sub RemoveSsetsObjects()
' ´ÓÑ¡Ôñ¼¯ÖÐÒÆ³ý¶ÔÏó
On Error Resume Next
Dim sset As AcadSelectionSet
Set sset = ThisDrawing.SelectionSets.Add("SS4")
sset.SelectOnScreen
MsgBox sset.Count
Dim Ent As AcadObject
Dim deleteObj() As Object
k = 0
For Each Ent In sset
If Ent.Layer = "0" Then
ReDim Preserve deleteObj(k) 'As Object
Set deleteObj(k) = Ent
k = k + 1
End If
Next
sset.RemoveItems deleteObj
MsgBox sset.Count
sset.Delete
End Sub
页:
[1]