VBA 데이터 유형 – 변수 및 상수
In this Article
VBA 데이터 유형 – 변수 및 상수
이번 VBA 튜토리얼에서는 변수와 상수의 개념을 이해할수 있도록 도와드리겠습니다. 변수 및 상수는 VBA뿐만 아니라 모든 프로그래밍 언어에서 알아야 할 중요한 개념입니다.
프로그래밍을 배우려면 변수와 상수가 무엇인지, 코드에서 변수와 상수를 어떻게 사용하는지 이해해야 합니다.
변수는 무엇인가요?
변수는 코드에서 선언한 값으로, 결과적으로 컴퓨터 메모리에 예약되어 저장됩니다. 변수의 이름을 지정해야 하며 변수의 데이터 유형을 선언하는 것이 좋습니다. 데이터 유형을 선언하는 것은 변수에 저장해야 하는 데이터 유형을 프로그램에 알려주는 것입니다.
코드에서 변수를 사용하면 프로그램도 변수에 액세스하게 됩니다. 변수의 실제 값은 코드가 실행되는 동안 변경될 수 있습니다.
VBA에서는 변수를 선언하기 위해 Dim 구문을 사용해야 합니다. VBA에서 변수를 선언하는 방법은 아래 코드를 참조해 주세요:
Sub DeclaringAVariable()
Dim product_Name As String
Dim number_of_Products as Integer
End Sub
변수를 선언하면 컴퓨터 메모리에 공간이 확보되므로 변수를 선언한 뒤 변수를 초기화할 수 있습니다. 변수를 초기화하면 변수에 초기 값을 할당합니다. VBA에서 변수를 초기화하는 방법은 아래 코드에 나와 있습니다:
Sub InitializingAVariable()
Dim number_of_Products As Integer
number_of_Products = 5000
End Sub
VBA에서 변수 이름을 지정할때 아래 사항을 고려해야합니다:
• 예약어는 변수 이름으로 사용할 수 없습니다. VBA에는 코드에서 사용할 Dim, Private, Function, Loop 및 기타 키워드와 같은 특정 예약어가 있으며 예약어로 변수 이름을 지정할 수 없습니다.
• 변수 이름을 지정할 때 !, @, &, ., #과 같은 특수 문자나 공백을 사용할 수 없습니다.
• 변수 이름은 255자를 초과할 수 없습니다.
• 변수 이름을 숫자로 시작할 수 없습니다.
VBA에서 사용할 수 있는 다양한 일반 데이터 유형
VBA에서 사용할 수 있는 데이터 유형은 다양합니다. 그러나 코드에서 가장 많이 사용하는 일반적인 데이터 유형은 다음과 같습니다:
• String – 텍스트 값을 저장하는 데 사용됩니다.
• Boolean – 참 또는 거짓 값을 저장하는 데 사용됩니다.
• Integer – 정수 값을 저장하는 데 사용됩니다.
• Double – 소수가 포함된 숫자를 저장하는 데 사용됩니다.
• Date – 날짜를 저장하는 데 사용됩니다.
참고: 값을 문자열 데이터 유형으로 저장할 때는 따옴표를 사용해야 합니다. 예를 들면 다음과 같습니다:
Dim product_Name as String
product_Name = “ABC 제품”
참고: 값을 날짜 데이터 유형에 저장하는 경우 따옴표를 사용해야 합니다. 예
Dim start_date as Date
start_date = “1/4/2019”
모든 VBA 데이터 유형
데이터 유형 | 크기 | 범위 |
---|---|---|
Byte | 1 Byte | 0 ~ 255 |
Integer | 2 Bytes | -32,768 ~ 32,767 |
Single | 4 Bytes |
음수 : -3.402823E38 ~ -1.401298E-45 양수 : 1.401298E-45 ~ 3.402823E38 for positive values |
Long | 4 Bytes | -2,147,483,648 ~ 2,147,483,648 |
Double | 8 Bytes |
음수 -1.79769313486232e+308 ~ -4.94065645841247E-324, 양수 4.94065645841247E-324 ~ 1.79769313486232e+308 |
Decimal | 14 Bytes |
소수점 자리가 없는 경우 : +/-79,228,162,514,264,337,593,543,950,335 소수점 자리가 있는 경우 +/-7.9228162514264337593543950335 |
Date | 8 Bytes | 100년 1월 1일 ~ 9999년 12월 31일 |
Currency | 8 Bytes | -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 |
String (변형 가능한 길이) | 문자열 길이에 10 bytes 추가 | 0 ~ 20억 |
String (고정된 길이) | 문자열 길이 | 1 ~ 약 65,400 |
Object | 4 Bytes | VBA 객체 |
Boolean | 2 Bytes | True 또는 False |
Variant 데이터 유형 사용하기
변수의 데이터 유형이 확실하지 않거나 변경해야 할 가능성이 있는 경우 Variant 데이터 유형을 사용할 수 있습니다.
Variant 데이터 유형은 고정 길이 문자열 데이터 유형을 제외한 모든 종류의 데이터를 저장할 수 있습니다. 다음과 같은 방식으로 변형 데이터 유형을 선언합니다:
Dim myValue as Variant
VBA에서 Option Explicit 사용하기
VBA에서 Option Explicit을 사용하면 모든 변수를 선언해야 하므로 이를 사용하는 것이 좋습니다. 도구>옵션>편집기 로 이동한 다음 변수 선언 요구를 체크하면 Excel에서 항상 Option Explicit을 자동으로 추가하도록 할 수 있습니다.When you use Option Explicit in VBA, this means you have to declare all your variables which is a good idea to do. You can ensure Excel always automatically adds Option Explicit in the VBE by going to Tools>Options>Editor and then check Require Variable Declaration.
코드에서 변수 사용하기
아래 예제는 위에서 다룬 모든 개념을 보여줍니다:
Sub UsingVariablesInYourCode()
Dim product_Name As String
product_Name = "ABC 제품"
MsgBox product_Name
End Sub
결과는 아래와 같습니다:
상수란 무엇인가요?
상수는 변수와 비슷하지만 상수는 변경할 수 없는 값을 저장합니다. VBA에서 상수를 선언하는 방법은 아래 코드에 나와 있습니다:
Sub DeclaringAConstant()
Const NumberofDays = 1
MsgBox NumberofDays
End Sub
결과는 아래와 같습니다:
참고: 상수를 해당 모듈에서만 사용할 수 있는 Private로 선언하거나 다른 모듈에서 사용할 수 있는 Public으로 선언할 수도 있습니다.