엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

엑셀(Excel)/VBA

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

환경: Microsoft Excel 2013

 

VBA 와 엑셀 시트간의 연계를 위한 매크로 실행 버튼은 VBA 작업에 있어서 가장 기본이 됩니다. 직접 만든 소스를 실행하는 방법 중 하나이기 때문입니다. 오늘은 개발 도구에서 제공하는 ActiveX 컨트롤의 버튼을 추가해서 직접 만든 매크로 함수가 실행될 수 있도록 연결시켜 보겠습니다.

 

먼저 매크로 관련 작업을 위해서는 [개발 도구] 탭이 화면에 나와 있어야 합니다. 처음 엑셀을 설치하고 그 이후에 매크로 관련 작업을 한 적이 없다면 탭이 없을 겁니다.

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

개발 도구 탭을 추가하기 위해 [파일] > [옵션] 메뉴를 선택해서 엑셀 옵션 대화상자를 띄웁니다

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 


엑셀 옵션 대화상자의 왼쪽 메뉴 목록에서 [리본 사용자 지정]을 선택합니다. 오른쪽 리본 메뉴 목록에서 [개발 도구]를 체크합니다. 그럼 화면에 [개발 도구] 탭이 나타납니다

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

다시 화면으로 돌아가서 다시 나타난 [개발 도구] 탭으로 이동합니다. 버튼을 추가하기 위해 삽입 리본 메뉴를 클릭합니다. 그리고 ActiveX 컨트롤 목록에 버튼 아이콘을 클릭해서 화면에 추가합니다

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

버튼 이벤트에 의해서 실행되는 함수는 자동으로 생성이 가능합니다. 버튼 컨트롤에서 오른 마우스를 눌러 [코드 보기] 메뉴를 선택합니다

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

그럼 버튼 이름과 이벤트 명을 조합해서 자동으로 함수를 만들게 됩니다. 그림에서처럼 CommandButton1_Click() 함수가 그것입니다. 내부에 자신이 원하는 소스를 구현하시면 됩니다. 저는 함수 실행 테스트를 위해서 메시지 박스 실행을 위한 MsgBox 함수를 구현하였습니다

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

그런데 버튼을 클릭했는데 실행이 되지 않고 선택만 됩니다. 현재 상태가 디자인 모드로 설정이 되어 있어서 입니다. 디자인 모드를 해제해야 버튼이 클릭됩니다. 상단에 디자인 모드 리본 메뉴를 클릭해서 해제하고 버튼을 클릭하면 소스가 실행되겠죠

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

 

디자인 모드를 해제하고 버튼을 클릭합니다. CommandButton1_Click() 함수에 추가한 MsgBox 함수가 실행되면서 메시지 박스를 출력하였습니다. 이제 버튼을 추가해서 VBA 코드를 어떻게 실행해야 할지 감이 오시죠

엑셀 VBA 매크로 실행 버튼을 만들어서 VBA 코드 실행하는 방법

Posted by 녹두장군