엑셀(Excel) VBA – 사용자정의 함수 세부내용 VB 코드로 등록하기 |
환경 : Microsoft Excel 2010 |
Function 으로 함수를 만들게 되면 사용자 지정 함수로 분류가 되게 됩니다. 이때 자기만의 분류를 만들어서 그곳에 함수를 모아두고 싶거나 도움말 같은 상세 내용을 집어 넣을수 있는 VB 코드가 있습니다. 그것이 Application.MacroOptions 함수 입니다.
▼ Application.MacroOptions 는 엑셀에서 사용자정의 함수의 설명이나 단축키 분류등의 옵션을 지정하게 해주는 함수 입니다.
Application.MacroOptions Macro := 사용자정의함수명 Description := 함수에 대한 상세 설명 HasShortcutKey := 기본값은 False 이며 True 이면 단축키 할당할수 있음 ShortcutKey := HasShortcutKey 가 True 일때 단축키 넣기 Category := 함수들의 범주명을 만듬 |
▼ Application.MacroOptions 으로 함수의 분류와 설명을 등록하기 위해 원의 넓이를 구하는 함수를 간단하게 하나 만들었습니다.
Function 원의넓이구하기(radius As Double) 원의넓이구하기 = radius * 3.14 End Function |
▼ 이렇게 함수를 하나 만들면 처음에는 사용자 정의 함수에 들어가 있을 겁니다. 이것을 나만의 분류를 만들어 옮겨 보도록 하겠습니다.
▼ 먼저 엑셀이 구동될 때 함수를 실행 할 것이므로 왼쪽 익스플로어에서 “현재_통합_문서” 더블클릭합니다. 콤보박스에서 Workbook 와 Open 함수를 선택합니다.
▼ 이렇게 함수가 만들어지면 아래 소스와 같이 Macro 에 사용자정의 함수명을 넣고 Description 에는 설명글을 넣습니다. 이것이 도움말이 됩니다. 그리고 Category 는 함수리스트에서 분류가 됩니다.
Private Sub Workbook_Open() Application.MacroOptions _ Macro:="원의넓이구하기", _ Description:="원의넓이 구하는 함수로써 인수로" & _ " 반지름을 넘기면 됩니다.", _ Category:="GON 정의함수" End Sub |
▼ 엑셀을 닫고 다시 실행해 봅니다. 그리고 Application.MacroOptions 이 제대로 수행이 되었는지 확인해 보겠습니다. fn 을 눌러서 함수 마법사를 띄웁니다. 그리고 범주선택콤보박스를 선택합니다. 그럼 위에서 정의한 범주가 나올겁니다. 범주안에 미리 정의한 함수명이 들어가 있는 것을 확인할 수 있습니다.
'엑셀(Excel) > VBA' 카테고리의 다른 글
엑셀(Excel) VBA – Application.Evaluate 함수 이용해서 수식문자열계산하기 (2) | 2014.12.23 |
---|---|
엑셀(Excel) VBA – 수식을 문자열로 바꾸는 사용자정의 함수 만들기 (0) | 2014.12.22 |
엑셀(Excel) VBA – Application.Volatile 함수로 사용자정의함수 재구동 (2) | 2014.12.21 |
엑셀(Excel) VBA – 선택한 셀시트명, 파일명, 위치를 알아오는 사용자정의함수 (0) | 2014.12.20 |
엑셀(Excel) VBA - 셀영역의 값을 복사하기 (1) | 2014.12.18 |
엑셀(Excel) VBA - 스크롤 막대 컨트롤 이용해서 대출상환금 구하기 (0) | 2014.12.16 |
엑셀(Excel) VBA - 목록상자에서 다중선택하여 엑셀에 값 추가하기 (7) | 2014.12.15 |
엑셀(Excel) VBA - 폼에 배치한 컨트롤 정렬하기 (0) | 2014.12.12 |