본문 바로가기

엑셀/VBA

엑셀 개체 이벤트, 속성 및 메서드 알아보기

반응형

앞에서 개체(Object)와 컬렉션에 대해 알아보았습니다. VBA에서는 이 개체를 제어하기 위해 많은 속성과 메서드를 제공합니다. 속성과 메서드 양은 방대하여 모두 외워서 사용하기는 힘듭니다. 그래서, 엑셀 VBA의 개체 찾아보기나 Microsoft에서 제공하는 도움말을 검색하여 확인하면서 사용하게 됩니다.

 

 

액셀에서 개체와 컬렉션에 대해 알아보기

 

액셀에서 개체와 컬렉션에 대해 알아보기

엑셀을 구성하는 다양한 요소들이 있습니다. 이러한 요소들을 개체(Object)라 합니다. 이 개체들은 서로 연결되어 있고 이렇게 연결되어 있는 개체들을 통해 엑셀이 작동합니다. 여기서 서로 연결

mr-johndoe.tistory.com

 

 

 

 

1. 개체 찾아보기 및 Microsoft 도움말

 엑셀 메뉴에서 개발도구-코드-Visual Basic을 클릭하여 VBE를 엽니다. 개발도구가 엑셀 메뉴에 없다면 아래 링크의 글을 참조하시기 바랍니다.

 

엑셀 매크로 저장 및 사용하기 I

 

엑셀 매크로 저장 및 사용하기 I

1. 매크로를 사용하기 위한 메뉴 추가 엑셀 메뉴를 보시면 개발도구라는 메뉴가 있습니다. 만약 없다면 홈 메뉴에서 옵션을 클릭하시면 [그림 1]과 같은 엑셀 옵션 창이 뜹니다. 그럼 좌측에 나열

mr-johndoe.tistory.com

 

VBE 메뉴에서 보기-개체 찾아보기를 클릭하시거나 단축키 F2를 누르시면 [그림 1]과 같은 창이 출력됩니다.

 

개체_찾아보기
[그림 1] 개체 찾아보기

[그림 1]에 빨간색 사각형으로 표시된 부분에 worksheet라고 입력하고 우측 쌍안경 아이콘을 클릭하시면 검색 결과에 worksheet와 관련된 내용이 출력되는데 맨 위 Excel 라이브러리의 Worksheet 클랙스를 마우스로 클릭하시면 worksheet와 관련된 속성 등이 아래 'worksheet' 구성원이라 표시된 창에 나타납니다.

또한 클래스 창을 보면 Worksheet가 나와있습니다. 즉 개체는 바로 클래스라는 것을 알 수 있습니다. 클래스 창에서 원하는 개체를 클릭하면 개체의 이벤트, 속성 및 메서드가 출력됩니다.

검색 결과 중에서 궁금한 이벤트, 속성 및 메서드가 있다면 마우스로 해당 결과를 클릭하고 맨 위에 있는 물음표(?) 아이콘을 클릭하시면 그와 관련된 도움말이 출력됩니다. 

이와 같이 VBA 프로그래밍을 하면서 개체의 속성 등을 확인하여 이를 참조해가며 코딩해 나갈 수 있습니다.

 

 

 

2. 개체의 이벤트, 속성 및 메서드

 이벤트는 엑셀에서 마우스가 클릭되거나 엑셀 창을 열거나 닫는 등 어떠한 동작이 발생할 때 이 동작을 지칭합니다. VBA 프로그램을 작성할 때 이벤트에 대해 코딩을 하였을 경우 해당 동작이 발생하면 자동으로 VBA 프로그램이 실행됩니다.

 

속성은 개체의 정보를 말하며 이 속성으로 개체의 상태를 변경할 수 있습니다.

 

메서드는 개체가 어떠한 동작을 하게 될 때 그와 관련된 코드를 작성하게 되는데 개체가 실행되는 동작을 메서드라 합니다. 가령 Worksheet가 마우스로 클릭되어 활성화될 때 메서드는 Worksheet(1).Activate와 같이 코딩하면 됩니다.

 

[그림 1]의 검색 결과를 자세히 보시면 검색 결과 앞에 아이콘 그림이 있습니다. 이는 이벤트, 속성 및 메서드를 표시하는 것으로 아이콘 그림의 의미는 아래 표를 참조하시기 바랍니다.

 

이벤트
이벤트_아이콘
속성
속성_아이콘
메서드
메서드_아이콘

 

3. 개체 구성원 사용

 개체의 구성원을 사용하는 방법은 다음과 같습니다.

 

      개체명.구성원

 

구성원이 속성인 경우에 속성에 값을 입력하려면 다음과 같이 작성합니다.

 

      개체명.속성 = 값

 

1번 워크시트 이름을 sample이라 변경하려면 아래와 같이 코딩합니다.

     

      Worksheets(1).Name = "sample"

 

구성원이 메서드인 경우에 메서드에 값을 입력하려면 다음과 같이 작성합니다.

      

      개체명.메서드 매개변수:= 값

 

다음과 같이 메서드에 값을 입력하는 형식으로 작성할 수 있습니다.

 

      ActiveWorkbook.Sheets.Add after:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count)

 

활성화된 엑셀 파일의 워크시트 뒤에 현재 워크시트의 개수를 구하여 그 번호의 워크시트를 추가하라는 의미입니다.

 

반응형