ollie 发表于 2022-7-6 15:03:32

VBA创建attblocks

嘿伙计们
 
我今天写了我的第一个cva autocad脚本,不知道你们是否可以给我一些建议:
 
该脚本创建新的ATTDEF,这些ATTDEF是旧块属性的副本:
 
Sub Block_edit()
Dim objCount As Integer
Dim mspaceObj As AcadObject
Dim att As AcadAttributeReference
Dim block As AcadBlockReference
Dim i As Integer
objCount = ActiveDocument.ModelSpace.Count

For i = 0 To objCount - 1
   Set mspaceObj = ThisDrawing.ModelSpace.Item(i)
   If mspaceObj.ObjectName = "AcDbBlockReference" Then
       Set block = mspaceObj
       retval = block.GetAttributes()
      For Each c In retval
         Set att = c
         Set new_att = ThisDrawing.ModelSpace.AddAttribute(att.Height, acAttributeModeNormal, "", att.InsertionPoint, att.TagString, att.TextString)
       Next c
   End If
Next
   
End Sub
 
它工作得很好,但我不知道如何创建这些项目的选择集或集合,以便稍后可以将它们转换为块。
 
任何建议都很好
 
坦克斯
奥利。
页: [1]
查看完整版本: VBA创建attblocks