이 변수가 사용될 수있다 여기서 엑셀 VBA에서 변수의 범위를 결정한다. 당신이 그것을 선언 할 때 변수의 범위를 결정합니다.

세 가지 범위 지정 수준이 있습니다 : 프로 시저 수준, 모듈 수준 및 공용 모듈 수준.

워크 시트에 명령 단추를 놓고 다음 코드 줄을 추가

Variable Scope Example

  1. 두 절차 모듈로 (a 절차 중 하나 또는 서브 함수이다). Visual Basic 편집기에서 삽입 모듈을 클릭하십시오. 다음 코드 줄을 추가합니다

Procedure Level Scope in Excel VBA

당신이 시트 (두 개의 서브 우퍼를 호출)에 명령 단추를 클릭하십시오 2. 결과 :

Procedure Level Scope Result

Procedure Level Scope Result

설명 :이 (하위 및 최종 하위 사이) 절차에 선언되어 있기 때문에 범위 프로 시저 수준이 TXT 변수. 그 결과, 당신은 단지 SUB1이 변수를 사용할 수 있습니다. 변수의 TXT는 SUB2에서 사용할 수 없습니다.

당신이 변수가 모듈의 모든 절차를 사용할 수있게하려는 경우 3. 당신은 당신이 변수가 모듈 수준 범위를 갖고 싶어 말하고있다.

당신은 (모듈의 상단) 일반 선언 섹션에서 변수를 선언해야합니다. 다음과 같이 약간의 코드를 조정합니다

Module Level Scope in Excel VBA

당신이 시트에 명령 단추를 클릭 할 때 결과 4 :

Module Level Scope Result

Module Level Scope Result

설명 : 지금 SUB2에서 사용할 수있는 TXT 변수. 모듈 수준은 개인 모듈 수준과 같은 의미로 사용된다. 일반 선언 섹션에서 희미한 문으로 선언 기본적으로 변수가 비공개로 범위가되기 때문이다. 당신은 공중으로 범위 변수를 수도 있습니다. 읽어.

  1. 공공 키워드를 사용하여, 당신의 변수는 통합 문서의 모든 모듈의 모든 프로 시저에 사용할 수 있습니다. 이 공공 모듈 수준 범위라고합니다. 다음과 같이 약간의 코드를 조정합니다

Public Module Level Scope in Excel VBA

설명 : 이제 새 모듈을 만들고이 모듈에 SUB3라는 서브를 배치 할 수 있습니다. SUB2과 같은 코드를 사용합니다. 당신의 명령 단추 코드에 SUB3를 추가합니다. 워크 시트에 명령 단추를 클릭하면 “변수는이 절차에 사용 할 수 있습니다”라는 세 개의 메시지 상자가 (다운로드 엑셀 파일 참조)를 얻을 것이다.