CAFE

엑셀 & VBA

Ⅰ. VBA의 문법구조 이해

작성자넓은평야|작성시간09.07.18|조회수576 목록 댓글 0

Ⅰ. VBA의 문법구조 이해

 

  1. 변수 와 상수

     - 변수 : 국그릇에 국이, 반찬그릇에 반찬이 담겨 있듯, 정보를 담는 그릇(특정한 정보를 담는 하드웨어적인 메모리 블록)

     - 상수 : 한 번 선언된 후에는 다시는 값을 바꾸어 대입할 수 없는 것을 말함

      ★ 선언된 변수와 상수는 하드 디스크 같은 물리적 공간이 아니라 컴퓨터의 메모리(RAM)내에 존재하면서 언제든지 프로그램에서 호출하면 그 값을 프로그램으로 넘겨준다.

  

   1) 변수의 특징

     - 값을 담은 후에도 값을 바꾸어 대입할 수 있다.

     - 변수명을 지정할 때의 규칙

      ① 변수명은 영문 대소문자와 한글, 숫자, 밑줄(_)만 사용 가능

      ② 변수명의 첫 글자는 반드시 영문 혹은 한글로 시작

      ③ 변수명의 길이는 255자까지 사용가능

      ④ 비주얼 베이직에서 사용하는 예약어는 사용할 수 없음

     - 변수는 지역변수(Private)와 전역변수(Public)로 나눌 수 있다.

 선언영역

 지역변수

전역변수 

 프로시저 수준  변수를 선언한 프로시저에만 사용 가능  프로시저 내에서는 선언 할 수 없음
 모듈 수준  변수를 선언한 모듈에서만 사용 가능  모듈 수준의 외부 선언부에서 사용이 가능하며 모든 모듈세서 변수 사용 가능

 

2. 연산자

 1) 사칙연산자  : +, -, *, /

 2) 지수 연산자 : 캐럿 (^)

 3) 문자의 결합 : &

 4) 비교 연산자 : <, <=, >, >=, =, <>(좌우변이 같지 않다)

 5) 논리 연산자 : and, or, not

※ 연산자 우선순위 : 가장 먼저 계산되는 것은 산술 연산자이며, 그 다음은 비교연산자, 마지막으로 논리 연산자 순으로 계산된다. 산술 연산자와 논리 연산자는 각각의 연산자에도 우선 순위가 있으며, 비교 연산자는 모두 우선순위가 같다.

 

3. 선언문과 데이터 형

변수를 입력할 때, 변수의 데이터형을 선언하지 않고 바로 변수에다 값을 대입하여 사용가능한데, 그 이유는 비주얼베이직은 데이터형을 선언하지 않은 변수는 모두 담을 수 있는 Variant 형으로 인식하여 처리하기 때문이다. 좋은 것 같지만 Variant형은 메모리를 지나치게 많이 사용하므로 프로그램 실행속도를 떨어뜨릴 수 있으니, 웬만하면 변수는 형 선언을 하는 것이 좋다. 이렇게 변수나 상수 등의 데이터 형을 미리 선언하는 것을 선언문이라한다

 

4. 변수 선언 형식

 ※ 변수 선언 형식 : 선언 키워드  변수이름  As 데이터 형 (예, Dim a As Integer)

선언 키워드(예약어라고도 함)는 보통 Dim(Dimension:차원)이라는 키워드가 사용되는데, 이외에도 Public, Static, Private 같은 키워드가 사용되기도 함.

 

   1) 정수형 : Byte, Integer, Long

       Byte 형 변수 : 0~255 까지의 숫자만 들어갈 수 있다

       Integer형 변수 : -32,768 ~ 32,767 까지의 숫자가 들어 갈 수 있다.

       Long형 변수 : 더욱 큰 숫자가 들어간다.

Dim Msg As String          -------------------     외부 선언부

 Sub 정수형()                  -------------------    프로시저의 시작

      Dim a As Integer        -------------------    내부 선언부 시작

      Dim b As Integer

      Dim c As Long          --------------------   내부 선언부 끝

     

      a = 10                      --------------------   프로시저 실행부 

      b = 20

 

      c = a + b

 

      Dibug.Print c            ---------------------   프로시저 실행부 끝

     Msg = " c의 값은"

 End Sub                       ---------------------   프로시저의 끝

 

     2) 문자형 : String   (예 : Dim a1 As String)

        - 문자열의 길이를 제한하고 싶은 경우 : Dim a1 As String * 4

          설명 : 문자열의 길이를 4문자로 고정한다는 뜻으로, 공백문자를 포함한 4문자 임.

 

     3) 소수형 : Single, Double (예 : Dim Cir As Double)

        - Single은 때로 자신의 범위내에 있는 값이라도 소수점 이하의 자리 중 일부를 잘라 먹는 현상이 있어 가급적이면 Double을 사용하는 것이 좋음

 

     4) 무엇이든 다 담는 모두형 : Variant  ( 예 : Dim a As Variant)

        - 모든 데이터가 다 들어갈 수 있다. 정수, 긴 정수, 소수, 문자열 모두 들어가도 에러가 안난다. 또한 이외에도 도형, 폼, 워크시트, 워크북 등의 데이터도 모두 담을 수 있다.

 

     5) 주석문 : 프로그램의 코드에서 (')가 입력된 부분은 프로그램에 전형 영향을 미치지 않는 주석문(설명문)이다.

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼