选择集2个不同的块
嗨,伙计,谢谢你给我的合作,直到现在,请有人知道,如果有可能作出一个选择集的两个不同的块在绘图中的VBA。我写了这段代码,当然它是有效的,因为我创建了两个不同的选择集,但如果我想只有一个选择两个不同的块?有办法吗?
GV(0) = "INSERT"
'---------------------------------------------------
'Revise the block name "tendnum1" for your application
GV(1) = "X1-O-180"
intCode(0) = 0
intCode(1) = 2
'---------------------------------------------------
ThisDrawing.SelectionSets.Add ("BOM")
Set Ssnew = ThisDrawing.SelectionSets("BOM")
Ssnew.Select acSelectionSetAll, , , intCode, GV
GV(1) = "F44500-HD-D-48504Rev0a"
ThisDrawing.SelectionSets.Add ("MySS")
Set Ssnew1 = ThisDrawing.SelectionSets("MySS")
Ssnew1.Select acSelectionSetAll, , , intCode, GV
For Each Entity In Ssnew
Array1 = Entity.GetAttributes
Set BlocK = Entity
X = BlocK.InsertionPoint(0)
Y = BlocK.InsertionPoint(1)
Z = BlocK.InsertionPoint(2)
HAN = BlocK.Handle
....
Next
For Each Entity In Ssnew1
Array2 = Entity.GetAttributes
Set BlocK = Entity
X1 = BlocK.InsertionPoint(0)
Y1 = BlocK.InsertionPoint(1)
Z1 = BlocK.InsertionPoint(2)
HAN1 = BlocK.Handle
....
Next
非常感谢。
将块名称的过滤器用作字符串,用逗号分隔:
GV(0) = "INSERT"
GV(1) = "X1-O-180,F44500-HD-D-48504Rev0a"
您还可以根据需要添加其他块名
也用逗号分隔
~'J'~
谢谢,很好。
你知道选择的标准吗?X坐标?由Y?还是按插入顺序?因为当提取属性数据时,我会发现一些块1和一些块2。
当然,我稍后会在代码中进行管理,但只是为了了解标准。 大家好,
有人能帮我解决一个小问题吗?
如果使用过滤器选项选择所有块,例如通过selectionset函数选择“BLOCK1”和“BLOCK2”,我会为每个块获得一个唯一的值,即句柄。
对于任何图形修改,如果我再次进行相同的选择集,我应该得到相同的句柄值吗?对吗?。
主要范围是在xls文件中传输一些块属性,对其进行操作,并再次存储在相同的块中。
但使用块句柄选项似乎效果不佳。
我将尝试删除旧块,并将其与excel中的新属性一起插入。
有人能给我推荐最好的方法吗?
非常感谢。
页:
[1]