제가…어쩌다보니 엑셀vba로 cad자동화 프로그램을 짜게 되었는데요
dream의 철근재료표 작성기능을 사용할때 편하기 위해서
철근 표시블록(엔티티5개로 구성된 철근직경과 이름을 기재하는 block)
을 살려서 사용하고자 합니다.
Set BkStObj = acad.ActiveDocument.ModelSpace.InsertBlock(InsertionPnt, “CSBNUM1”, 50, 50, 50, 0)
대충이런식으로 기존의 블록을 재활용해가면서 원하는 위치에 넣을수는 있는데요
중요한점은 안의 내용물을 고치면서 삽입하고싶습니다.
캐드로 표현하자면 bedit이나 refedit이 아닌 eattedit을 vba로 하고싶다는건데요
vba상에서 블록을 뜯어보면 구성된 엔티티가 item1,item2,……item5 이런식으로 요소(?)가 보입니다.
그런데 막상 코딩중에 .을 찍어서 확인해보면 item이라는 매서드는 잡히는데
item1이라는 프로퍼티는 잡히지가 않더라구요
.addattribute라는 매서드를 이용하면 제가 원하는 엔티티를 추가해서 블록에
item6이 생기게 할수는 있는데;
이런 기능을 원하는게 아니라 기존의 엔티티를 수정하고 싶은거라서요
하나하나씩 매서드랑 프로퍼티를 살펴보고는 있는데
제가원하는 명령이 잘 안보이는듯해서;; 혹시
블록을 구성하는 item을 수정하는법을 알 수 있을까요 고수분들 ㅠㅠ
여타 다른분들이 자동화짜신것들도 몇개 봤는데 그냥 원그리고 선그리고 글자 3개 집어넣고 이런식으로 그냥 5개를 전부 입력하는식으로 짜셨더라구요 큼…eattedit vba용 명령어라도 혹시 알수있을까요;;
마음같아서는 그냥
이런식으로 수정하고싶은데 말이죠;
VBA로 속성 편집은
oEnt가 선택한 객체라는 부분을 잘모르겠네요 좀더 가르침을 받을수있을까요
oEnt = 기존 엔티티 입니다.
아마도 방금생성한 블록객체를 셀렉트한뒤를 말씀하신것 같은데 제가 잘알아먹고 있는걸까요
한번 굴려 보겠습니다.