비주얼 베이직과 다른 많은 프로그래밍 언어들을 사용하면서 제일 많이 쓰는 것이 바로 변수이다.
변수는 한자로 '변할 변' 자와 '셈 수'자를 쓰는데 풀어 말하자면 '변하는 수' 이다.
(수학적으로) 어떠한 관계나 범위 안에서 여러가지 값으로 변할 수 있는 수 인 변수는,
프로그래밍 상에서도 요구에 따라 여러 값을 갖게 된다.
변수를 사용 하기 위해선 '변수 선언'이 필요하다.
변수 선언에서 변수의 형식과 사용 범위, 그리고 이름을 지정한다.
예) Dim 변수 이름 [as 변수 형식]
여기서 앞의 'Dim'은 '선언자'라고 해서 변수가 사용 될 범위를 나타낸다.
선언자와 그 적용 범위는 다음과 같다.
선언 영역 | 사용 가능 선언자 | 변수의 사용 가능 영역 |
모듈 | Dim | 해당 모듈 전체 |
Public | 전체 모듈 | |
Private | 해당 모듈 전체 | |
함수 내부 | Dim | 해당 함수 내부 |
Static | 해당 함수 내부 |
-
Dim 뒤에 붙는 '변수 이름'은 말 그대로 그 변수의 이름이다.
프로그래밍을 하면서 이 변수 이름을 가지고 값을 넣었다 뺐다 하는것이다.
변수 이름은 자유롭게 설정 할 수 있지만, 몇가지 제한이 있다.
1. 첫번째 문자는 영문자나 한글이어야 하고, 기호나 숫자는 사용 할 수 없다. 2. 변수의 이름은 255자를 초과할 수 없다. 3. 예약어는 사용 할 수 없다. (End, Private, Sub 등) 4. 변수 이름이 문자인 경우 한글, 영문자, 숫자, 밑줄(_)을 사용 할 수 있지만, 특수기호는 사용 할 수 없다. |
변수 이름 다음으로 붙는 '변수 형식'은 앞에 as를 붙여 표시한다.
변수 형식에 따라 가질 수 있는 값이 다르며 생략 할 경우 자동으로 Variant 라는 형식을 갖는다.
변수의 형식은 다음과 같다.
데이터(변수) 형식 | (차지하는) 크기 | 범위 |
Byte | 1바이트 | 0 ~ 255 |
Boolean | 2바이트 | True 또는 False |
Integer | 2바이트 | -32,768 ~ 32,767 |
Long | 4바이트 | -2,147,483,648 ~ 2,147,483,647 |
Single | 4바이트 |
-3.402823E28 ~ -1.401298E45 (음수) 1.401298E45 ~ 3.402823E38 (양수) |
Double | 8바이트 |
-1.79769313486232E308 ~ -4.94065645841247E324 (음수) 4.9406564581247E324 ~ -1.9769313486232E308 (양수) |
Currency | 8바이트 |
-922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 |
Date | 8바이트 | 100년 1월 1일 ~ 9999년 10월 31일 |
Object | 4바이트 | 모든 개체 참조 |
String (가변 길이) | 문자열 | 10바이트 + 문자열 길이, 0 ~ 약 2조 |
String (고정 길이) | 문자열 | 1 ~ 약 65,400 (2^16) |
Variant (숫자) | 16바이트 | Double 형 범위 내의 모든 숫자 |
Variant (문자) | 24바이트 | 문자열 길이 + 22바이트 |
이 외에도 사용 자 정의 형식 (Type 사용)을 쓸 수 있다.