엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

환경: Microsoft Excel 2013

 

엑셀에서 좀더 확장된 기능을 구현하기 위해서는 개발 도구를 활성화 시켜야 합니다. 개발 도구에는 매크로, COM 추가기능, 확장 컨트롤 등 잘 사용하면 웬만한 4GL 툴들 못지않은 기능들이 들어가 있습니다. 그 중에서 가장 많이 사용되고 있는 VBA 함수를 작성해 보겠습니다. 그리고 양식 컨트롤에 있는 버튼을 추가해서 VBA 로 작성한 함수를 연결할 것입니다.

 

아래는 AVERAGEIFS 함수를 이용해서 지정한 거래처와 품목에 해당하는 판매 이익금의 평균을 구하는 샘플입니다. 버튼을 만들어서 클릭하는 순간 판매 이익금의 평균을 구할 것입니다.

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

먼저 버튼을 추가하기 위해 [개발 도구] 탭으로 갑니다. 삽입 리본 메뉴를 클릭하면 여러 컨트롤이 보이게 되는데 [양식 컨트롤]에 있는 버튼을 선택합니다.

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

선택한 버튼을 워크시트에 추가하기 위해서 마우스로 드래그 해 줍니다. 그럼 버튼의 크기가 결정되고 매크로 지정 대화상자가 뜹니다. 대화상자의 [매크로 이름]이 바로 VBA 함수 명이 됩니다. 직접 VBA 편집창에 들어가서 동일한 이름으로 함수를 만들면 버튼과 연결이 되는 것입니다

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

다음은 버튼을 클릭했을 때 실행될 함수를 만들어야 합니다. 그러려면 VBA 편집창을 열어야겠죠. [개발 도구] > [Visual Basic] 리본 메뉴를 클릭해서 편집창을 엽니다. 그리고 함수가 들어갈 Module1 파일을 찾습니다

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

만약 모듈 파일이 없다면 추가해야 합니다. [삽입] > [모듈] 리본 메뉴를 클릭합니다

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

[매크로 지정] 대화상자에서 [새로 만들기]를 클릭하면 매크로 이름에 해당하는 함수가 생성됩니다. 만약 함수명이 없다면 그림처럼 직접 만들어야 합니다

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

함수에 들어갈 내용은 다음과 같습니다. 워크시트의 수식 편집기에 입력했던 내용 그대로 실행할 것입니다. Formula 함수가 그 역할을 하게 됩니다. 그리고 Formula 함수를 호출하기 전에 영역이 선택되어야 합니다.

 

Sub 판매이익금_Click()

    Range("D17").Select

    ActiveCell.Formula = "=AVERAGEIFS(H3:H14,C3:C14,C3,D3:D14,D3)"

End Sub

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법

 

준비가 되었다면 워크시트로 가서 버튼을 클릭합니다. 그럼 바로 판매 이익금이 구해 집니다. 이런식으로 버튼과 함수를 만들어서 연결하시면 됩니다

엑셀 Excel VBA 개발 도구를 이용해서 버튼 삽입하고 함수 연결하는 방법


저작자 표시 비영리 변경 금지
신고
Posted by 녹두장군