乐筑天下

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

[VBA]为什么我不能过滤掉不要的图层

[复制链接]

11

主题

37

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2003-12-22 19:29:00 | 显示全部楼层 |阅读模式
为什么我不能过滤掉不要的图层?
sub aaa()   
    Dim txLa As AcadLayer
    Dim TxSS As AcadSelectionSet
    Dim i As Integer, j As Integer
    Dim Fd(0) As Integer
    Dim fdata As Variant, ftype As Variant
   
    Fd(0) = 8
    fdata = Fd(0)
    Set TxSS = ThisDrawing.SelectionSets.Add("Txss")
    For i = 0 To ThisDrawing.Layers.Count - 1
        Set txLa = ThisDrawing.Layers.Item(i)
        If txLa.Name  "0" Then
            
            ftype = txLa.Name
            TxSS.Select acSelectionSetAll, ftype, fdata
'            Debug.Print TxSS.Item(0).Layer, TxSS.Item(0).ObjectName
            ThisDrawing.Export txLa.Name, "wmf", TxSS
            TxSS.Clear
        End If
    Next i
End Sub
回复

使用道具 举报

11

主题

37

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2003-12-22 20:00:00 | 显示全部楼层
我的想法是将除0层外的其它层以wmf输出,但我却无法将不需要的图层中的图元滤掉。版主,我错在哪里?
回复

使用道具 举报

15

主题

285

帖子

9

银币

后起之秀

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

铜币
345
发表于 2003-12-22 20:40:00 | 显示全部楼层

这句有错吧
这样试试
TxSS.Select acSelectionSetAll, , , FType, FData
回复

使用道具 举报

11

主题

37

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
81
发表于 2003-12-22 21:50:00 | 显示全部楼层
bluemoon兄,这样不行,你在帮忙看看.
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-12-22 21:57:00 | 显示全部楼层
有几个问题:
1.过滤器的FType, FData均应为变体数组,其中FType的元素必须为数组,而FData的元素必须为变体,它们形成一一对应的关系。
2.过滤非“0”的图层,可以使用简单的“~0”来过滤,而不必你那么复杂。
3.正如bluemoon所说的,你的Select方法的参数写得有问题。
回复

使用道具 举报

12

主题

135

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
183
发表于 2004-1-3 17:05:00 | 显示全部楼层
先做图形净化可以吗?purge
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-15 10:46 , Processed in 0.714046 second(s), 64 queries .

© 2020-2025 乐筑天下

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