반응형
엑셀vba에서는 변수 선언을 하지 않아도
바로바로 쓸 수 있어서 편리했다.
하지만 코드가 길어지고 많은 변수를 사용 할 때 조금 헷갈리는 경우 발생하기도 한다.
그래서 언제부터인지 Option Explicit를 선언하여 변수 선언을 강제하고 있다.
변수선언을 하지 않고도 위 그림처럼 사용해도 아무런 문제는 없다.
짧은 코드에서는 이게 더 편함
위 코드를 실행하면 A=3, B = 7, C = 10이라는 값이 들어가게된다.
아무런 문제가 없지만 장기적으로 계속 프로그래밍을 하려면 변수 선언을 강제화하는게 좋은 습관일거라 판단하였고
편리한 부분도 있어서 Option Explicit 선언을 사용하고 있다.
Option Explicit 선언을 하면 사용하는 모든 변수에 대해 선언해야만 한다.
각기 다른 데이터 타입으로 선언하고 코드를 실행해보았다.
A는 정수
B는 롱
C는 선택 하지 않음
변수 C에는 Variant/Long 형태로 변형되었고 코드는 종료되었다.
C=B+A 연산에서 데이터형의 크기 큰 타입이 적용되는 듯 하다.
* integer = 2kb / 표현 가능한 숫자: -32,768 ~ 32,768
* long = 4kb / 표현 가능한 숫자: -2,147,483,648 ~ 2,147,483,647
뭐 대략 변수선언이 이렇다는걸 알게되었다.
Option Explicit 자동으로 입력하는 방법
vba 편집기 -> 도구 -> 편집기 -> 변수 선언 요구 (체크) -> 확인
반응형
'컴퓨터 공부 > 엑셀 & VBA' 카테고리의 다른 글
[엑셀vba] batch 파일을 만들어서 실행시키자! (0) | 2020.11.19 |
---|---|
[엑셀vba] getElementsByClassName '13' 런타임 오류 (0) | 2020.11.18 |
[엑셀vba] private sub, sub 차이가 뭘까 (7) | 2020.11.16 |
[엑셀vba] debug.print 사용하기 (0) | 2020.11.16 |
[엑셀vba] 열려있는 인터넷 익스플로러를 컨트롤 해보자 (7) | 2020.10.23 |