请高手下载截图看
我要对选取的层的字符串进行过滤,但是每次操作的层又不是固定的,所以我用了一个动态的数组来读取的层名,但是过滤的时候就一个字符串都找不到,改回静态数组又能找到,有没有高手做过,给指点一下
For i = 0 To List1.ListCount - 1 '取得选中层的个数
If List1.Selected(i) = True Then a = a + 1 End If
Next i ReDim astring(a - 1) As String ' 生成一个动态数组来保存选中的层名 a = 0 For i = 0 To List1.ListCount - 1 '是否选取了要操作的层 If List1.Selected(i) = True Then astring(a) = List1.List(i) a = a + 1 End If Next i
fla = a
ReDim fdata(fla) As Integer 根据选取中层的个数来生成过滤条件的数组 ReDim finfo(fla) As Variant fdata(0) = 0 第一个条件是对字符串操作 finfo(0) = "TEXT"
For a = 1 To fla fdata(a) = 8 第二个条件是对选中的层操作, finfo(a) = astring(a - 1)
Next a fdatatype = fdata finfotype = finfo
Set sset2 = acadobj.ActiveDocument.SelectionSets.Add("ff") sset2.Select acSelectionSetAll, , , fdatatype, finfotype 过滤
msgbox sset2.count
请高手帮我分析一下子,不管我对什么层进行操作得到的结果都是空的,好晕啊 |