ID:
PW:

     0 분
     31 분

프로그래밍 Tips
프로그래밍에 관한 Tip을 공유하는 곳입니다.


[VBA] integer범위
이석종  2021-02-24 10:35:17, 조회 : 100, 추천 : 24

VBA는 변수의 형(type)을 선언하는데
형마다 저장할 수 있는 수의 범위가 제한되어있다.

데이터 형 중 수를 저장하는 형은 integer, long, double인데
각 형 별로 저장할 수 있는 수의 범위는 아래와 같다.
이런 차이는 차지하는 메모리의 차이로 인해 생긴다.
무조건 큰 메모리를 이용하면 메모로 소보가 크기 때문에 수의 크기에 따라
integer, long, double로 나누어서 선언하고 사용한다.

integer는 2byte, long은 4byte, double은 8byte를 차지한다.

Integer : 2byte -32,768 ~ 32,767
Long : 4byte -2,147,483,648 ~ 2,147,483,647
double : 8byte -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

위의 값보다 큰 값을 저장하면 overflow 에러가 발생한다.

예를 들어서 cint()함수. 즉 문자를 정수로 변환하는 함수에 위 값보다 큰 값을 넣으면
overflow에러가 발생한다. 형 변환할 때 수의 크기에 따라 integer, long, double중 하나를 선택해야 한다.

ex) cint("33,700") --> overflow error
clng("33,700") --> 33700
cdbl ("33,700") --> 33700



  추천하기   목록보기

Copyright 1999-2021 Zeroboard / skin by zero
구조설계의 미래를 준비하는 모임 [구조설계미래포럼]