제 블로그에서 몇 가지 사용자 정의함수를 만들어 본 적이 있습니다.
3. UNIQUE 함수와 유사한 기능을 하는 사용자 정의 함수 만들기
이렇게 만든 사용자 정의함수를 엑셀에 등록을 해 놓으면
현재 컴퓨터의 모든 엑셀 파일에서
등록한 사용자 정의함수를 사용할 수 있습니다.
사용자 정의함수를 만들고 등록하는 절차는 다음과 같습니다.
사용자 정의함수 만들기
먼저 VBA 편집기를 실행하고 모듈을 삽입합니다.
그다음 함수를 작성을 해줍니다.
Function 키워드를 사용해 함수를 작성합니다.
저는 지난 블로그에서 작성한
문자열에서 숫자만 추출하는 사용자 정의함수를 사용하겠습니다.
아래 그림과 같이 코드를 입력합니다.
그다음 VBA 편집기는 닫습니다.
함수를 포함한 파일을 Excel 추가 기능으로 저장하기
그다음 엑셀 화면에서
파일 → 다른 이름으로 저장 → 찾아보기
를 누르면 아래 그림과 같이 파일을 저장하는 창이 나타납니다.
파일을 저장할 때 아래 빨간색 네모의
Excel 추가기능(*.xlam) 을 선택한 다음,
파일 이름을 입력하고 저장을 눌러줍니다.
참고로 Excel 추가 기능(.xlam) 파일이 저장되는 기본 위치는
다음과 같습니다.
해당 파일 형식을 선택하면 자동으로 아래 폴더로 이동하고 저장할 수 있습니다.
C:\Users\사용자이름\AppData\Roaming\Microsoft\AddIns
추가 기능 등록하기
그 다음 엑셀 화면으로 돌아와
개발도구 → Excel 추가 기능을 클릭합니다.
아래 그림과 같이 추가 기능 창이 열립니다.
저는 위에서 저장할 때 파일 이름을 숫자추출로 했습니다.
저장한 파일 이름이 추가 기능 창에서 내가 만든 함수를 확인하는 기준이 됩니다.
숫자추출을 체크하고 확인을 눌러줍니다.
이제 엑셀파일을 종료하고
다시 실행을 해줍니다.
함수 사용하기
위에서 만든 사용자 정의 함수의 이름은 다음과 같습니다.
ExtractNumbers()
이 함수를 이제 엑셀 파일에서 직접 사용이 가능합니다.
B3셀에 함수식이 입력되어 있고
정상작동합니다.
여기를 방문하시면 더 많은 엑셀 관련 자료를 확인할 수 있습니다.
'EXCEL VBA' 카테고리의 다른 글
[ 엑셀 VBA ] 두 범위의 값 비교하기, VBA로 입력받은 두 범위 비교하기 (0) | 2024.11.12 |
---|---|
[ 엑셀 VBA ] VBA 사용자 정의 함수 : 문자열에서 숫자만 추출 (5) | 2024.11.03 |
엑셀 VBA 문자열 비교 하는 방법, Like 연산자 사용하기 (1) | 2024.11.03 |
[ 엑셀 VBA ] VBA로 ChromeDriver(크롬드라이버) 압축파일 다운받기, VBA로 파일 다운로드 하기 (2) | 2024.10.29 |
[ 엑셀 VBA ] 내 크롬 브라우저의 버전에 맞는 최신 ChromeDriver 버전 VBA로 확인하기 (2) | 2024.10.28 |