티스토리 뷰
반응형
선택한 블럭을 영역내에서 삭제하는 소스입니다.
Sub DeleteBlock() AppActivate ThisDrawing.Application.Caption On Error Resume Next Dim Doc As AcadDocument Set Doc = ThisDrawing Doc.Utility.Prompt vbCr & "블럭 제거프로그램..." Dim SelObjO As AcadObject Dim P1 As Variant Doc.Utility.GetEntity SelObjO, P1, "영역내 찾을 블럭을 선택하세요..." If SelObjO.ObjectName <> "AcDbBlockReference" Then Doc.Utility.Prompt vbCr & "블럭이 아닙니다..." Exit Sub End If Doc.Utility.Prompt vbCr & "삭제할 영역을 선택하세요..." Dim FilterType(0) As Integer Dim FilterData(0) As Variant Dim ObjSS As AcadSelectionSet Doc.SelectionSets("DelBlock").Delete Set ObjSS = Doc.SelectionSets.Add("DelBlock") FilterType(0) = 2 FilterData(0) = SelObjO.Name ObjSS.SelectOnScreen FilterType, FilterData If ObjSS.Count = 0 Then Exit Sub ObjSS.Erase ObjSS.Delete End Sub
이 코드중 필터에 대한 설명은 아래 링크를 참조 바랍니다.
참고글 : 출력 블럭 설정
반응형
'프로그래밍 > CAD' 카테고리의 다른 글
자동출력 VBA - 출력 블럭 설정 (0) | 2018.02.09 |
---|---|
자동출력 VBA - 프린터 설정 (0) | 2018.02.09 |
자동출력 VBA - 출력순서 (0) | 2018.02.09 |
자동출력 VBA (1) | 2018.02.08 |
VBA에서 사용하는 기초 LISP (0) | 2018.02.06 |
댓글