본문 바로가기
VBA

VBA 4주 완성 : 엑셀업무 자동화 -1주차 1교시-

by keumkang 2022. 7. 2.
반응형

 

 

VBA(Visual Basic for Application)란 무엇인가?

VBA란 Visual Basic 에서 Office 프로그램을 위한 프로그래밍 언어 입니다. Visual Basic은 1991년도에 출시되었으며, VBA는 1993년에 출시 되었습니다.

Visual Basic 이라는 언어는 어떻게 출생되었냐면 윈도우에서 사용가능한 쉬운 프로그래밍 언어가 필요해서 만들어지게 되었습니다. 기초영어만 알면 누구나 코드를 읽고 해석이 가능한데요. 당시에 유행했던 이유가 GUI 작업도 편하게 가능하기 때문입니다. 여기서 OFFICE에 특화된 프로그램을 만든것이 VBA라고 볼 수 있겠습니다.

 

VBA는 설치/패키징 필요 없습니다

엑셀만 있다면 모든 준비는 끝이며 실무에 필요한 기본 구문만 익히면 나만의 함수 및 프로그램을 바로 완성 할 수 있습니다.

 

반면, 단점이 있습니다

 

① 반드시 엑셀을 실행해야 사용이 가능합니다. 

② 제공되는 라이브러리가 매우 제한적입니다. ▶ ex) 게임보이(VBA)를 이용하려면 게임팩(라이브러리)이 제한적이게 됩니다.

③ 외부 어플리케이션에 제어가 매우 힘듦니다.

④ VBA를 실행하면 실행취소가 불가능 합니다. 

 

VBA 느리지 않을까요?

아뇨. VBA는 느리지 않습니다! 실무에서 다루는 몇 백 ~ 몇 천만개 데이터는 1~2초 내로 처리가 가능하다고 합니다!

 

 

실습시작

예제는 첨부된 파일을 이용하시면 됩니다!

엑셀LIVE101강 - VBA 4주 완성 특별스터디 1강 - 예제파일.xlsx
0.01MB

 

VBA를 들어가기 위해서는 개발 도구 ▶ Visual Basic 클릭하시면 편집창이 생성됩니다!

 

 

여기서 잠깐!.

 

VBA는 명령문이 실행되는 영역이 크게 3가지가 있습니다.

 

1. 시트/통합문서

- 시트 or 통합문서에서 실행하는 명령문일 때

- 시트를 클릭하거나 실행하거나 더블클릭하거나 특정 동작이 있을 때 특정 명령문을 실행해야 할 때

 

2. 유저폼(사용자 정의폼)

- 유저폼 안에서 실행하는 명령문일 때 

- 유저폼 안에서 버튼을 클릭.... 등 이벤트 명령문을 작성할 때

 

3. 모듈

- 그 외 전반적으로 모든 상황에 쓰이는 코드가 필요할 때 

 

명령문 실행! Open

 

현재_통합_문서 클릭! ▶ 일반을 Workbook 선택  MsgBox "어서오세요!" 입력

Private Sub Workbook_Open()
MsgBox "어서오세요!"
End Sub

 

예제 파일을 다시 켜보면 "어서오세요!" 라고 뜹니다.

 

 

명령문 실행! SheetActivate

현재_통합_문서 클릭! ▶ 일반을 Workbook 선택  MsgBox Sh.Name 입력

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
MsgBox Sh.Name
End Sub

좌측 하단 Sheet를 누를 때마다 sheet의 이름이 Msg Box에 뜨게 됩니다!

 

 

매크로를 사용하기 위해서 엑셀 확장자 변경 xlsx ▶ xlsm


매크로를 사용하기 위해서는 현재 확장자명이 *.xlsx 으로 되어 있을겁니다! 그런데 우리가 Visual Basic을 사용하기 위해서는 확장자명을 xlsm으로 변경해야지만 사용이 가능해요 그러니 꼭 확장자명을 xlsm 으로 바꿔주세요! 

 

 

반응형

댓글0