sacru2red

Visual BASIC 6.0 Developer

VBA 튜토리얼 01. 개요

VBA 튜토리얼 01. 개요

VBA(Visual Basic for Application)

VBA는 VB6을 기반으로 MS Application에서 사용되는 스크립트 언어입니다. (다른 프로그램을 위해 사용된다면 VB Script라고도 합니다.) 엑셀에서 VB를 다룬다면 Visual Basic for Excel Application이 되고, 워드에서 접근한다면 Visual Basic for Word Application가 됩니다.

컬렉션 객체

컬렉션은 같은 성격을 가진 클래스의 집합체를 의미합니다. 객체이름 뒤에 s가 붙는 규칙을 가지고 있습니다. VBA를 사용하는데 있어 중요한 컬렉션 몇 개를 알아봅시다.

워크북Workbooks 컬렉션

워크북 컬렉션 객체는 엑셀 통합 문서, 즉 엑셀 파일을 의미합니다. 파일을 추가하고 이름을 변경하고 하는 등의 작업을 주로하게 됩니다.
Add, Open, Close, OpenDatabase, OpenText, OpenXML, CanCheckOut, CheckOut등의 메소드와 Application, Count, Creator, Item, Parent 프로퍼티가 있습니다. 워크북 컬렉션의 하위객체인 워크북 객체의 주요 이벤트로는 Activate, Change, NewSheet, SheetActivate, SheetChange, WindowActivate 등이 있고 그에 대응하는 다양한 메소드와 프로퍼티들이 있습니다. 자세한 내용은 링크를 참조하세요.

워크시트Worksheet 컬렉션

워크시트 컬렉션 객체는 워크시트를 나타내는 객체입니다. 메소드로는 Add, Add2, Copy, Delete, FillAcrossSheets, Move, PrintOut, PrintPreview, Select가 있고, 프로퍼티로는 Application, Count, Creator, HPageBreaks, Item, Parent, Visible, VPageBreaks가 있습니다. 하위 객체인 워크시트 객체는 활성화된(현재) 시트ActiveSheet에 접근하거나, Worksheets(“Sheet1”) 또는 Worksheets(1) 과 같은 방식으로 접근합니다. 주요 이벤트로는 Activate, Calculate, Change, Deactivate, SelectionChange, TableUpdate 등이 있고 그에 대응하는 다양한 메소드와 프로퍼티들이 있습니다. 자세한 내용은 링크를 참조하세요.

그 외 자주 사용되는 객체

레인지(Range) 객체

레인지 객체는 워크시트 오브젝트의 하위 객체로 시트 내에 한개의 셀 혹은 셀들로 이루어집니다. 또한 엑셀에 입력되는 대부분의 데이터들이 바로 레인지 객체에 보관됩니다. 레인지 객체에 접근하는 방법은 크게 네가지로 이루어 집니다.

  • Range 속성을 사용하는 방법 ex) Worksheets(“Sheet1”).Range(“A1”)
  • Cells 속성을 사용하는 방법 ex) Range(Cells(3, 2), Cells(10, 5)), Range(“A2:C9”).Cells(3, 2) - 상대 위치로 셀을 찾게됨
  • Offset 속성을 사용하는 방법
  • Union 메서드를 사용하는 방법

VBA에는 디버깅도구로 직접 실행 창(Immediate window)을 지원합니다. (단축키 Ctrl + G)

Written on September 27, 2018