달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
728x90
반응형

 

 

 

 

[ 엑셀VBA ] 변수 선언의 사용 - Public, Private, Dim

 

변수 선언시 사용하는 Public, Private, Dim은 접근 범위를 나타내는 지시자이며, 선언된 변수가 어디까지 접근이 가능한지

나타내는 지시자이다.

 

Public : 타 모듈까지 접근이 가능

Private: 현재 모듈내에서 상용이 가능

Dim : 현재 모듈 혹은 현재 프로시져에서 사용이 가능

추가로

Global : 전체 프로젝트에서 접근이 가능

 

 

변수의 선언은 Sub나 Function 안에 선언하는 경우와 모듈의 맨 위에 선언하는 경우 두가지가 있다.

 

모듈의 상단 선언부분에 변수 선언

 

1) 전역변수

Public i as Integer로 선언된 변수는 해당 모듈 뿐 아니라 다른 모듈에서도 접근이 가능하며, 이러한 형태의 변수는 전역변수

이다. 전역변수는 프로그램 전체에서 접근이 가능하다.

 

2) 모듈변수 

위와 같이 모듈 상단선언부에 Private 와 Dim으로 선언 된 변수는 다른 모듈에서 접근이 불가능 하나 같은 모듈 내에서는 어디에서나 접근이 가능하며, 이것을 모듈변수라고 한다.

 

3) 지역변수

Sub나 Function안에 변수 선언을 하는 경우는 Dim 구문으로만 선언이 가능하다. 이 경우는 같은 모듈내에 있더라도 다른 Function이나 Sub에서 접근이 불가능하다. 이 처럼 Function이나 Sub안에 선언된 변수를 지역변수라고 한다.


 

 

 

 

Private와 Public는 Sub나 Function을 선언할 때도 사용되며, 변수 선언과 마찬가지로 Public은 다른 모듈에서도 접근이 가능하지만 Private는 다른모듈에서 접근이 불가능하다 (Dim은 Sub나 Function의 선언시에는 사용되지 않는다.

 

 

Public, Private의 Function을 선언 예문
Public Sub 모듈간범위()
    내용
End Sub


Private Sub 모듈내범위()
    내용
End Sub


 

처음이라 두서 없이 설명하였는 데 좀더 간략하게 설명한다면 변수선언이 적용되는 범위가 모듈의 범위까지 적용인지, 모듈내 적용인지,

프로시져내 적용인지에 따라 각각 구분된다고 할 수 있다.

 

도움이 되었길 바라며 포스팅을 마감한다.

 

 

 

728x90
반응형
:
Posted by mapagilove