我认为这更容易。我遇到了一个路障,在所有示例中,我发现这段代码应该可以工作。
Basic,我的意思是基本的,我想创建两个选择集。我已经了解到我需要检查它们是否已经存在,如果存在,则删除它们。然后再次制作选择集。我希望这个简单的代码所做的是查看现有的选择集并删除与我将要创建的选择集同名的任何选择集。然后做一个简单的显示,向我显示我创建的选择集在绘图中。然后我将在此基础上构建我的代码。
- Sub ChXrefGray()
- Dim ASSS as acadselectionsets
- Dim Ass, xxreflist, xxlayerlist as acadselectionset
- Dim msg as string
- Set ASSS = ThisDrawing.SelectionSets
- For Each Ass In ASSS
- If Ass.Name = "xreflist" Then
- ASSS.Item("xreflist").Delete
- Else
- If Ass = "layerlist" Then
- ASSS.Item("layerlist").Delete
- Else
- End If
- Next
- Set ssxreflist = ASSS.Add("XrefList")
- Set sslayerlist = ASSS.Add("LayerList")
- MsgBox "there are " & ThisDrawing.SelectionSets.Count & "Selection Sets in this drawing"
- msg = vbCrLf & vbCrLf
- For Each Ass In ASSS
- AssName = Ass.Name
- msg = msg & AssName
- msg = msg & vbCrLf
- Next
- MsgBox msg
- End Sub
不能得到更基本的。但是当我运行代码时,VB告诉我我有一个Next语句,没有For语句。在代码的最开始。我希望有人能向我解释为什么我的代码不起作用,但其他相同的例子可以。
谢谢大家,
亚历克斯
本帖以下内容被隐藏保护;需要你回复后,才能看到! 游客,如果您要查看本帖隐藏内容请 回复 |