VBA의 범위를 벗어난 Excel 첨자 오류(5개 솔루션 포함)

  • 이 공유
Hugh West

이 기사에서는 Excel VBA 에서 " 범위를 벗어난 첨자 " 오류의 원인과 해결 방법을 보여줍니다.

실습 템플릿 다운로드

여기에서 무료 연습 Excel 템플릿을 다운로드할 수 있습니다.

VBA.xlsm의 아래 첨자가 범위를 벗어남 오류

VBA에서 첨자 범위 이탈 오류란 무엇입니까?

VBA Subscript out of range 오류는 Excel에서 존재하지 않는 멤버 또는 존재하지 않는 배열 컬렉션에 액세스하려고 할 때 발생합니다. 이것은 Excel의 VBA 코딩에서 " 런타임 오류 9 " 유형의 오류입니다.

오류는 일반적으로

과 같습니다.

VBA에서 아래 첨자가 범위를 벗어난 오류를 해결하는 5가지 이유

이 섹션에서는 이 발생하는 가장 일반적인 5가지 이유에 대해 설명합니다. 첨자가 범위를 벗어남 오류 및 해결 방법은 무엇입니까?

1. 존재하지 않는 통합 문서

에 대한 VBA의 범위를 벗어난 아래 첨자 오류열려 있지 않은 Excel 통합 문서에 액세스하려고 하면 " 아래 첨자가 범위를 벗어났습니다 " 오류가 발생합니다.

위에 표시된 코드를 실행 하려고 하면 “ 라는 Excel 통합 문서가 없기 때문에 오류가 발생합니다. 현재 열려 있는 Sales ”입니다.

Solution

이 오류를 해결하려면 먼저 액세스하려는 Excel 통합 문서를 연 다음 실행합니다. 매크로.

2. 존재하지 않는 경우 VBA에서 아래 첨자가 범위를 벗어남 오류Worksheet

Excel 통합 문서에 없는 워크시트에 액세스하려고 하면 VBA에서 “ Subscript out of range ” 오류가 발생합니다. .

위에 표시된 코드를 실행하면 “ Sheet2 <가 없기 때문에 오류가 발생합니다. 2>” 워크시트를 저희 워크북에서 사용하실 수 있습니다.

솔루션

이 오류를 해결하려면 실행 중인 워크북에 액세스하려는 Excel 시트가 있어야 하고 그런 다음 매크로를 실행합니다.

3. VBA에서 정의되지 않은 배열 요소에 대한 아래 첨자 범위 초과 오류

동적 배열의 길이를 Excel VBA 에서 DIM 또는 REDIM 이라는 단어를 입력하면 “ 아래 첨자가 범위를 벗어남 ” 오류가 발생합니다.

위 코드에서 5에서 10까지의 차원에서 Array를 선언했지만 5보다 낮은 인덱스 3의 첨자를 참조했습니다.

Solution

이 문제를 해결하려면 Array 차원 사이에 인덱스를 선언합니다.

이 조각 여기에서 5에서 10 범위 내에 있는 인덱스 5의 첨자를 참조했기 때문에 코드가 완벽하게 작동합니다.

4. 잘못된 컬렉션에 대한 VBA의 첨자 범위 초과 오류/ Array

아래 첨자가 가능한 첨자의 범위보다 크거나 작은 경우 Subscript out of range 오류가 발생합니다.

위의 예를 보면변수를 배열로 선언했지만 시작점과 끝점을 지정하는 대신 첫 번째 배열에 값 20을 직접 지정했습니다.

Solution

To 이 문제를 해결하려면 시작점과 끝점으로 배열의 길이를 할당해야 합니다.

이제 배열을 선언했기 때문에 이 코드는 오류를 제공하지 않습니다. 시작점은 1이고 끝점은 5입니다.

5. 속기 스크립트

에 대한 VBA의 아래 첨자 범위 초과 오류 아래 첨자가 유효하지 않은 요소를 참조하면 Excel VBA 에서 “ 아래 첨자가 범위를 벗어남 ” 오류가 발생합니다. 예를 들어, [A2] ActiveSheet.Range(A2) .

Solution

To fix의 줄임말입니다. 이를 위해 컬렉션에 유효한 키 이름 인덱스 를 사용해야 합니다. ActiveSheet.Range(A2) 대신 [ A2 ].

VBA에서 Excel 첨자 범위 이탈 오류의 장점

  • VBA Subscript out of range 오류 또는 " 런타임 오류 9 "는 오류가 발생한 위치를 지정하는 데 정말 유용합니다. VBA 코드에서.
  • 이 오류는 사용자가 오류 유형을 확인하고 오류 코드에 따라 해결책을 찾을 수 있도록 도와줍니다.

기억해야 할 사항

  • 이 오류는 코드의 각 단계를 컴파일하여우리가 실제로 조치를 취해야 하는 코드이므로, 코드 줄이 많다면 F8 키를 눌러 각 코드 줄을 하나씩 컴파일하는 것이 좋습니다.

결론

이 기사에서는 VBA에서 Excel 아래 첨자가 범위를 벗어남 오류의 원인과 해결 방법을 설명했습니다. 이 기사가 귀하에게 많은 도움이 되었기를 바랍니다. 주제에 대해 궁금한 점이 있으면 언제든지 문의해 주세요.

Hugh West는 업계에서 10년 이상의 경험을 가진 고도로 숙련된 Excel 트레이너이자 분석가입니다. 그는 회계 및 재무 학사 학위와 경영학 석사 학위를 보유하고 있습니다. Hugh는 교육에 대한 열정을 가지고 있으며 따라하기 쉽고 이해하기 쉬운 독특한 교수법을 개발했습니다. Excel에 대한 그의 전문 지식은 전 세계 수천 명의 학생과 전문가가 자신의 기술을 향상시키고 경력에서 탁월하도록 도왔습니다. Hugh는 자신의 블로그를 통해 자신의 지식을 전 세계와 공유하고 개인과 기업이 잠재력을 최대한 발휘할 수 있도록 무료 Excel 자습서 및 온라인 교육을 제공합니다.