반응형
개체모델(Object Model)이란?
개체모델(Object Model)은 특정 개체의 모든 구성 요소를 구분하고 분류하기 위한 일종의 틀이다.
하나의 건물을 개체모델의 예로 들어보자.
여기 관악구청이 있다. 관악구청은 여러 개의 부서로 나눠질 것이고,
각 부서마다 팀이 있고 각 팀마다 책상, 의자, 컴퓨터, 사람 등 무수한 개체가 있을 것이다.
누구든지 관악구청의 서무과의 경리팀에 있는 의자에 앉으려면 관악구청 > 서무과 > 경리팀 > 의자 순서로 접근해야 한다.
이를 VBA의 개체모델 접근 방식으로 바꾸면,
관악구청.과(서무).팀(경리).의자(1) 과 같은 형식이 된다.
MS Office의 개체 모델은 작성자가 이해하는 한 이와 같은 방식으로 작동된다.
파워포인트의 특정 개체에 접근하는 코드를 살펴보자.
ActivePresentation.Slides(1).Shapes(1)
이 코드에 등장하는 개체는 세 가지이다. ActivePresentation / Slides(1) / Shapes(1)
각각이 의미하는 바가 뭔지는 모르겠지만 ActivePresentation이란 놈을 통해서 Slides(1)에 접근했고, 다시 Slides(1) 녀석을 통해서 Shapes(1)에 접근한 것으로 보인다.
(이 코드는 "현재 활성화된 프레젠테이션의 첫(1)째 슬라이드(Slide)에 있는 첫(1)째 도형(Shape)에 접근한다."는 의미를 지닌다.)
엑셀이든 파워포인트이든, 각 프로그램이 가진 개체는 수도 없이 많다.
VBA를 통해 매크로를 만든다는 것은 곧 각 프로그램에 있는 다양한 개체들 중에서 내가 필요로 하는 개체에만 접근하여 가지고 놀겠다는 의미이다.
그렇기 때문에 MS Office에서 제공하는 개체모델을 모두 숙지할 필요도 없고, 딱 내가 필요한 개체에만 접근할 수 있는 만큼의 지식만 있으면 된다.
MS Office는 자체적으로 VBA Reference를 제공하고 있다. 여기서 Object Model 항목을 찾으면 방대하고도 집약적인 개체모델 정보를 얻을 수 있다.
참고(파워포인트 VBA Reference) -> 링크
반응형
'MS Office 일반' 카테고리의 다른 글
[파워포인트] 같은 창 복제해서 띄우고 편집(검토)하기 (0) | 2017.12.18 |
---|---|
[MS 일반] 와일드 카드 (0) | 2017.10.20 |
[검색] FIND 함수 (0) | 2017.10.08 |
[텍스트] LEFT 함수 (0) | 2017.10.08 |