적용 대상
Excel 2010

요약

"적용 대상" 섹션에 나열된 Microsoft Excel 버전에서 Visual Basic for Applications 사용하여 사용자 지정 계산을 반환하는 사용자 정의 함수를 만들 수 있습니다. 그러나 사용자 정의 함수는 워크시트 셀의 수식에 의해 호출될 때 Microsoft Excel 환경을 변경하는 작업을 수행할 수 없습니다.

추가 정보

워크시트 셀의 수식에서 호출하는 사용자 정의 함수는 Microsoft Excel의 환경을 변경할 수 없습니다. 즉, 이러한 함수는 다음 중 어느 작업도 수행할 수 없습니다.

  • 스프레드시트에 셀을 삽입, 삭제 또는 서식 지정합니다.

  • 다른 셀의 값을 변경합니다.

  • 통합 문서에 시트를 이동, 이름 바꾸기, 삭제 또는 추가합니다.

  • 계산 모드 또는 화면 보기와 같은 환경 옵션을 변경합니다.

  • 통합 문서에 이름을 추가합니다.

  • 속성을 설정하거나 대부분의 메서드를 실행합니다.

사용자 정의 함수의 목적은 사용자가 Microsoft Excel과 함께 제공되는 함수에 포함되지 않은 사용자 지정 함수를 만들 수 있도록 하는 것입니다. Microsoft Excel에 포함된 함수도 환경을 변경할 수 없습니다. 함수는 입력된 셀에 값 또는 텍스트를 반환하는 계산을 수행할 수 있습니다. 모든 환경 변경은 Visual Basic 서브루틴을 사용하여 수행해야 합니다. 계산 중에 Excel은 사용자 정의 함수가 포함된 셀의 선례를 검사합니다. 계산 프로세스 중에 지금까지 모든 선례가 계산되지 않은 경우 Excel은 결국 사용자 정의 함수를 호출하고 Null 또는 빈 셀을 함수에 전달합니다. 그런 다음 Excel은 모든 선례를 계산할 수 있도록 충분한 계산 패스가 발생하는지 확인합니다. 최종 계산 단계 중에 사용자 정의 함수는 셀의 현재 값을 전달합니다. 이로 인해 사용자 정의 함수가 예상보다 자주 호출되고 예기치 않은 인수가 발생할 수 있습니다. 따라서 사용자 정의 함수는 예기치 않은 값을 반환할 수 있습니다.올바른 계산의 경우 계산에 사용되는 모든 범위를 인수로 함수에 전달해야 합니다. 계산 범위를 인수로 전달하지 않으면 함수의 VBA 코드 내에서 범위를 참조하는 대신 계산 엔진 내에서 계산 범위를 설명할 수 없습니다. 따라서 Excel에서는 통합 문서를 적절하게 계산하여 사용자 정의 함수를 계산하기 전에 모든 선례가 계산되는지 확인할 수 없습니다.

참고 자료

"Visual Basic 사용자 가이드" 버전 5.0, 4장, "Visual Basic 프로시저란 무엇인가요" , "사용자 정의 워크시트 함수 작성", Microsoft Excel 7.0 Visual Basic 도움말 파일.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.