43310
お世話になっております。  
AutoCADのVBAの開発についての質問です。  
図面内の全ての図形を探索して「A」という名前のブロックを検索し、その属性情報を変更するマクロを作成しています。

```

    For Each objEntity In ThisDrawing.ModelSpace
        If objEntity.ObjectName = "AcDbBlockReference" Then
            Set objEntity2 = objEntity
            If InStr(objEntity2.Name, "A") > 0 Then
               objEntity3 = objEntity2.GetAttributes()
               objEntity3(0).TextString = Left(objEntity3(0).TextString, 10)
            End If
        End If
    Next
    
```

この方法だと図形が数千個存在する場合、10秒程かかります。  
高速に検索できる方法がありましたらご教授ください。  
よろしくお願いします。
CC BY-SA 3.0
2018-04-10T08:44:36.163
43122
2018-04-17T08:26:26.980
2018-04-17T08:26:26.980
3060
28019
question
vba autocad
AutoCAD 図形を選択するVBAマクロについて
selectionSetのフィルター機能を使用してみてください。
CC BY-SA 3.0
2018-04-17T05:58:39.233
43310
2018-04-17T05:58:39.233
28021
43122
answer