Microsoft Excel에서 엑셀 추가 기능을 구축
Excel 추가 기능
Excel 추가 기능은 Excel이 시작될 때로드 할 수있는 파일 (일반적으로 .xla 또는 .xlam 확장명 포함)입니다. 이 파일에는 일반적으로 새 기능의 형태로 Excel에 추가 기능을 추가하는 VBA 코드가 포함되어 있습니다.
추가 기능은 Excel의 성능을 향상시키는 탁월한 방법을 제공하며 사용자 지정 기능을 배포하는 데 이상적인 수단입니다. Excel은로드하고 사용할 수있는 다양한 추가 기능과 함께 제공되며 많은 타사 추가 기능도 사용할 수 있습니다.
이 문서에서는 Excel VBA를 사용하여 사용자 지정 함수를 작성하는 방법과 추가 기능으로 저장 및 설치하는 방법을 보여줍니다. 사용자 정의 함수는 종종 UDF (사용자 정의 함수)라고합니다.
사용자 정의 함수 작성
추가 기능은 원하는만큼 UDF (사용자 정의 함수)를 포함 할 수 있으며 최근에는 추가 기능 파일을 열고 편집하여 추가 할 수 있습니다.
1 단계 : 새 통합 문서에 코드 모듈 추가
-
Excel을 시작하거나 이미 Excel이 열려있는 경우 빈 통합 문서를 새로 만듭니다.
-
개발자 탭에서 Visual Basic Editor를 열고 개발자 탭으로 이동합니다.
-
Visual Basic (키 : ALT + F11)을 클릭하면 Visual Basic Editor가 열립니다.
-
Visual Basic Editor의 프로젝트 탐색기 패널에서 VBAProject를 선택합니다. 빈 통합 문서가 선택됩니다.
프로젝트 탐색기가 보이지 않으면보기> 프로젝트 탐색기로 이동하여 엽니 다.
-
삽입 메뉴에서 모듈을 선택하십시오. 그러면 선택한 통합 문서에 새로운 빈 코드 모듈이 추가됩니다. 프로젝트 탐색기 패널에도 모듈이 표시됩니다.
2 단계 : 사용자 정의 함수 코드 입력
코드 창에서 Age User Defined Function
의 코드를 입력합니다.
3 단계 : 함수 테스트
바로 기능을 사용해 볼 수 있습니다. Excel로 전환하고 빈 통합 문서 (함수 코드 모듈을 만드는 데 사용하는 것과 동일한 문서)에서 셀에 날짜를 입력합니다. 다른 셀에 Excel의 기본 제공 함수 중 하나를 사용하는 것과 동일한 방식으로 함수를 입력합니다 (예 : = 연령 (A1)
UDF는 호스트 통합 문서 (UDF의 코드 모듈이 포함 된 통합 문서)가 열려있을 때마다 열려있는 모든 통합 문서에서 사용할 수 있습니다. 그러나 호스트 통합 문서를 닫고 다른 통합 문서에서 함수를 사용하려고하면 오류가 발생합니다. 다른 통합 문서에서 함수를 찾을 수 없으므로 #NAME? 오류가 나타납니다.
오류 발생을 극복하려면 Excel 추가 기능 내에서 UDF를 선언하고 Excel 추가 기능을 Excel 응용 프로그램에 할당해야합니다.
Excel 추가 기능 만들기
통합 문서를 추가 기능으로 저장
이제 코드 모듈이 포함 된 통합 문서를 Excel 추가 기능 (.xla 또는 .xlam) 파일로 저장해야합니다.
Excel 창에서 파일> 저장으로 이동하여 다른 이름으로 저장 대화 상자를 엽니 다. 추가 기능 파일의 이름을 입력하고 (일반적인 파일 이름 지정 규칙이 적용됨) 파일 형식 : 옵션을 사용하여 파일 형식을 Microsoft Excel 추가 기능 (.xla) 또는 (.xlam)으로 변경합니다.
[확인]을 클릭하기 전에 Add-In 파일을 저장할 위치를 확인하십시오.
마지막으로 [확인]을 클릭하여 변경 사항을 적용합니다. 이제 Add-In을 설치할 준비가되었으며 필요한 경우 다른 사용자에게 배포 할 수 있습니다.
추가 기능 설치
도구> 추가 기능으로 이동하여 추가 기능 대화 상자를 엽니 다. 추가 기능을 기본 위치에 저장 한 경우 사용 가능한 추가 기능 : 창에 해당 이름이 표시됩니다 (추가 기능을 다른 폴더에 저장 한 경우 [찾아보기] 버튼을 사용하여 찾습니다. ).
추가 기능을 설치하려면 추가 기능 이름 옆에있는 확인란에 체크 표시를하고 [확인]을 클릭합니다.
추가 기능이 설치되는 즉시 해당 기능을 Excel에서 사용할 수 있습니다. 함수 마법사 (함수 붙여 넣기 도구)의 사용자 정의 섹션에서 찾거나 기본 제공 함수처럼 셀에 입력하면됩니다. 추가 기능은 추가 기능 대화 상자로 돌아가서 확인란에서 체크 표시를 제거하여 제거 할 때까지 설치된 상태로 유지됩니다.
UDF 추가 및 추가 기능 변경
추가 기능 파일에는 원하는만큼의 모듈과 사용자 지정 함수가 포함될 수 있습니다. 언제든지 추가 할 수 있습니다.
추가 기능이 설치되어 있으면 VB 편집기의 프로젝트 탐색기 패널에 나열됩니다. 함수가 포함 된 모듈을 찾고 원하는대로 추가 및 변경하십시오. 추가 기능이 설치되지 않은 경우 추가 기능 파일을 찾아 두 번 클릭하여 Excel에서 엽니 다. Excel 창에서는 볼 수 없지만 VB 편집기의 프로젝트 탐색기에는 나타납니다.
변경 사항을 저장하십시오! 파일> 저장을 사용하여 VB 편집기 창에서이를 수행하십시오.
아래 코드를 따르세요
'Insert below code in Addin Option Explicit Function Age(DoB As Date) 'Gives a name to the function and declares that a single argument is needed, which must be a date. 'Checking whether Date of Birth is zero If DoB = 0 Then Age = "type the correct Date of Birth" Else 'If Date of Birth is not zero, compare the current month value with the Date of Birth Select Case Month(Date) 'If current month is before (i.e. less than) the month of date of birth, 'then they have not had their birthday, so their age is this year minus their birth year minus 1 Case Is < Month(DoB) Age = (Year(Date) - Year(DoB)) - 1 'If current month is same as the month of date of birth 'we need to know whether or not they have had their birthday yet Case Is = Month(DoB) 'If today date is equal to or past the day of their birthday, 'then they have had their birthday (or it is today) 'so their age is this year minus their birth year? 'otherwise their age is this year minus their birth year minus 1 If Day(Date) >= Day(DoB) Then Age = Year(Date) - Year(DoB) Else Age = Year(Date) - Year(DoB) - 1 End If 'If today?s month is after (i.e. greater than) the month of the person?s date of birth, 'they have had their birthday, so their age is this year minus their birth year. Case Is > Month(DoB) Age = Year(Date) - Year(DoB) 'Close the CASE statement End Select 'Close the IF statement End If 'Close the Function End Function
이 블로그가 마음에 들면 Facebook 및 Facebook에서 친구들과 공유하십시오.
여러분의 의견을 듣고 싶습니다. 작업을 개선하고 더 나은 서비스를 제공 할 수있는 방법을 알려주십시오. [email protected]로 문의 해주세요