乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 169|回复: 9

我以为比这简单...(新警报)

[复制链接]

7

主题

16

帖子

2

银币

初来乍到

Rank: 1

铜币
44
发表于 2008-11-13 13:14:21 | 显示全部楼层 |阅读模式
我认为这更容易。我遇到了一个路障,在所有示例中,我发现这段代码应该可以工作。
Basic,我的意思是基本的,我想创建两个选择集。我已经了解到我需要检查它们是否已经存在,如果存在,则删除它们。然后再次制作选择集。我希望这个简单的代码所做的是查看现有的选择集并删除与我将要创建的选择集同名的任何选择集。然后做一个简单的显示,向我显示我创建的选择集在绘图中。然后我将在此基础上构建我的代码。
  1. Sub ChXrefGray()
  2. Dim ASSS as acadselectionsets
  3. Dim Ass, xxreflist, xxlayerlist as acadselectionset
  4. Dim msg as string
  5. Set ASSS = ThisDrawing.SelectionSets
  6. For Each Ass In ASSS
  7.     If Ass.Name = "xreflist" Then
  8.       ASSS.Item("xreflist").Delete
  9.       Else   
  10.     If Ass = "layerlist" Then
  11.       ASSS.Item("layerlist").Delete
  12.       Else   
  13.   End If
  14. Next
  15. Set ssxreflist = ASSS.Add("XrefList")
  16. Set sslayerlist = ASSS.Add("LayerList")
  17. MsgBox "there are " & ThisDrawing.SelectionSets.Count & "Selection Sets in this drawing"
  18. msg = vbCrLf & vbCrLf
  19. For Each Ass In ASSS
  20.     AssName = Ass.Name
  21.     msg = msg & AssName
  22.     msg = msg & vbCrLf
  23. Next
  24. MsgBox msg
  25. End Sub

不能得到更基本的。但是当我运行代码时,VB告诉我我有一个Next语句,没有For语句。在代码的最开始。我希望有人能向我解释为什么我的代码不起作用,但其他相同的例子可以。
谢谢大家,
亚历克斯

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-11-13 13:18:11 | 显示全部楼层
试试这个...
  1. For Each Ass In ASSS
  2.     If Ass.Name = "xreflist" Then
  3.       ASSS.Item("xreflist").Delete
  4.     ElseIf Ass = "layerlist" Then
  5.       ASSS.Item("layerlist").Delete
  6.   End If
  7. Next

回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-11-13 13:55:29 | 显示全部楼层
马特,
非常感谢你。它像一个符咒。我向你的智慧之词致敬。
回复

使用道具 举报

3

主题

33

帖子

1

银币

初来乍到

Rank: 1

铜币
45
发表于 2008-11-13 13:56:38 | 显示全部楼层

♪♫ Ewwww ewww 那味道 ...咕噜咕噜闻到那股味道...♪♫
回复

使用道具 举报

17

主题

162

帖子

7

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
234
发表于 2008-11-13 14:24:10 | 显示全部楼层


我都没看到!
回复

使用道具 举报

27

主题

242

帖子

18

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
335
发表于 2008-12-3 14:14:45 | 显示全部楼层
环顾四周,看到了这篇文章。我不敢相信没有人提供这段代码
  1. Sub ChXrefGray()
  2. Dim ASSS as acadselectionsets
  3. Dim Ass, xxreflist, xxlayerlist as acadselectionset
  4. Dim msg as string
  5. Set ASSS = ThisDrawing.SelectionSets
  6. Set ssxreflist = vbdPowerSet("XrefList")
  7. Set sslayerlist =vbdPowerSet("LayerList")
  8. MsgBox "there are " & ThisDrawing.SelectionSets.Count & "Selection Sets in this drawing"
  9. msg = vbCrLf & vbCrLf
  10. For Each Ass In ASSS
  11.     AssName = Ass.Name
  12.     msg = msg & AssName
  13.     msg = msg & vbCrLf
  14. Next
  15. MsgBox msg
  16. End Sub
  17. 'From The Llama Library Published November 12, 1999
  18. Function vbdPowerSet(strName As String) As AcadSelectionSet
  19. Dim objSelSet As AcadSelectionSet
  20. Dim objSelCol As AcadSelectionSets
  21. Set objSelCol = Thisdrawing.SelectionSets
  22. For Each objSelSet In objSelCol
  23.       If objSelSet.Name = strName Then
  24.            objSelCol.Item(strName).Delete
  25.            Exit For
  26.       End If
  27. Next
  28. Set objSelSet = objSelCol.Add(strName)
  29. Set vbdPowerSet = objSelSet
  30. End Function
回复

使用道具 举报

3

主题

33

帖子

1

银币

初来乍到

Rank: 1

铜币
45
发表于 2008-12-3 14:21:43 | 显示全部楼层

嘿查克!
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-12-3 14:24:59 | 显示全部楼层
这不是Se7en的Chuck吧?
回复

使用道具 举报

7

主题

16

帖子

2

银币

初来乍到

Rank: 1

铜币
44
发表于 2008-12-3 14:54:34 | 显示全部楼层
哦,亲爱的
这是一个宝石!
回复

使用道具 举报

27

主题

242

帖子

18

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
335
发表于 2008-12-3 15:24:34 | 显示全部楼层
我现在需要拍摄Se7en吗?我想我只是留下了持久的印象。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-4 15:51 , Processed in 0.624248 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表