잘못된 개체 변수를 참조하고 있습니다. 이 오류는 다음과 같은 여러 가지 이유로 발생할 수 있습니다.
형식을 지정하지 않고 변수를 선언했습니다. 형식을 지정하지 않고 변수를 선언하면 기본적으로 형식
Object이 지정됩니다.예를 들어 선언된 변수는 선언된
Dim xDim x As StringString변수 형식Object;이 형식입니다.팁 (조언)
이 문은
Option Strict형식을 생성하는 암시적 입력을Object허용하지 않습니다. 형식을 생략하면 컴파일 시간 오류가 발생합니다. Option Strict 문을 참조하세요.로 설정된 개체를 참조하려고 합니다
Nothing.올바르게 선언되지 않은 배열 변수의 요소에 액세스하려고 합니다.
예를 들어 선언
products() As String된 배열은 배열의products(3) = "Widget"요소를 참조하려고 하면 오류를 트리거합니다. 배열에는 요소가 없으며 개체로 처리됩니다.블록이 초기화되기 전에 블록 내
With...End With의 코드에 액세스하려고 합니다.With...End With문 진입점을 실행하여With블록을 초기화해야 합니다.
비고
이전 버전의 Visual Basic 또는 VBA에서 이 오류는 키워드(x = "name"대신Set x = "name")를 사용하지 Set 않고 변수에 값을 할당하여 트리거되었습니다. Visual Set Basic .Net에서는 키워드가 더 이상 유효하지 않습니다.
이 오류를 해결하려면
On파일의 시작 부분에 다음 코드를 추가하여 설정합니다Option Strict.Option Strict On프로젝트를 실행하면 형식 없이 지정된 변수에 대한 컴파일러 오류가 오류 목록에 표시됩니다.
사용하도록 설정
Option Strict하지 않으려면 코드에서 형식 없이 지정된 변수(Dim x대신Dim x As String)를 검색하고 원하는 형식을 선언에 추가합니다.로 설정된 개체 변수를 참조하지 않는지 확인합니다
Nothing. 코드에서 키워드Nothing를 검색하고 개체가 참조될 때까지 설정Nothing되지 않도록 코드를 수정합니다.배열 변수에 액세스하기 전에 모든 배열 변수의 크기를 조정해야 합니다. 먼저 배열(
Dim x(5) As String대신Dim x() As String)을 만들 때 차원을 할당하거나 키워드를 사용하여ReDim배열에 처음 액세스하기 전에 배열의 차원을 설정할 수 있습니다.문 진입점을 실행하여 블록이
With초기화되었는지 확인With합니다.
참고하십시오
.NET