外部参照定義をアタッチ解除して、外部参照を図面から完全に除去できます。
また、個々の外部参照インスタンスを削除することもできます。外部参照定義をアタッチ解除すると、その外部参照に関連付けられたすべての従属シンボルが削除されます。外部参照のすべてのインスタンスが図面から削除された場合、AutoCAD は次回図面が開かれたときに外部参照定義を除去します。
外部参照をアタッチ解除するには、Detach メソッドを使用します。ネストした外部参照をアタッチ解除することはできません。
次の例では、外部参照をいったんアタッチしてから、アタッチ解除します。この例では、Sample フォルダにある 3D House.dwg ファイルを使用します。このイメージが存在しない場合や、別のフォルダにある場合は、変数 PathName に有効なパスおよびファイル名を指定してください。
Sub Ch10_DetachingExternalReference() On Error GoTo ERRORHANDLER ' Define external reference to be inserted Dim xrefHome As AcadBlock Dim xrefInserted As AcadExternalReference Dim insertionPnt(0 To 2) As Double Dim PathName As String insertionPnt(0) = 1 insertionPnt(1) = 1 insertionPnt(2) = 0 PathName = "c:/Program Files/Autodesk/AutoCAD release/sample/3D House.dwg" ' Add the external reference Set xrefInserted = ThisDrawing.ModelSpace. _ AttachExternalReference(PathName, "XREF_IMAGE", _ insertionPnt, 1, 1, 1, 0, False) ZoomAll MsgBox "The external reference is attached." ' Detach the external reference definition Dim name As String name = xrefInserted.name ThisDrawing.Blocks.Item(name).Detach MsgBox "The external reference is detached." Exit Sub ERRORHANDLER: MsgBox Err.Description End Sub