[VBA]为什么我不能过滤掉不要的图层
为什么我不能过滤掉不要的图层?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 我的想法是将除0层外的其它层以wmf输出,但我却无法将不需要的图层中的图元滤掉。版主,我错在哪里? TxSS.Select acSelectionSetAll, ftype, fdata
这句有错吧
这样试试
TxSS.Select acSelectionSetAll, , , FType, FData bluemoon兄,这样不行,你在帮忙看看. 有几个问题:
1.过滤器的FType, FData均应为变体数组,其中FType的元素必须为数组,而FData的元素必须为变体,它们形成一一对应的关系。
2.过滤非“0”的图层,可以使用简单的“~0”来过滤,而不必你那么复杂。
3.正如bluemoon所说的,你的Select方法的参数写得有问题。 先做图形净化可以吗?purge
页:
[1]