본문으로 바로가기

[Excel Tip-07] VBA

category MS Office/Excel 2019. 3. 5. 15:54
반응형

엑셀을 사용하면서 '이런 기능들은 없을까?'와 같은 생각에 검색들을 해보면,
응용하는 방법을 몰랐을 뿐이지 참으로 다양한 함수들과 기능들을 많아 한번씩 놀라곤 한다.
그런데, 엑셀이 분명 유용한 도구임은 확실하지만, 어디까지나 도구일 뿐이지 메인이 될 순 없다는 생각이 들다보니,
자연스레 눈이 VBA를 향하게 되었다.
엑셀이 가진 그 수많은 기능들을 다 기억하지 못한다면... 그냥 내가 만들어 쓰지 뭐. ㅎㅎ


1. VBA는 무엇인가?

그 자체로도 풍요로운 기능을 제공하는 엑셀을 더 혜자스러운 도구로 변신하게 만들어주는 숨겨진 보물인 VBA.
무엇을 할 수 있고 어떤 혜자스러움을 품고 있는지 알아보기 전에 VBA란 무엇인가를 먼저 살펴보자.

Visual Basic for Application의 머리 글자를 따서 VBA라고 이름을 붙였단다.
다시 말해, 특정 어플리케이션을 위한 비쥬얼 베이직이고, MS에서 윈도우용 VB를 출시한 만큼
Office 제품군 (그러니까, 파워포인트나 엑셀, 워드... 이런 친구들)에 어느 순간부터 VBA를 넣기 시작했다.

아무래도, 비쥬얼 베이직은 너무너무 잘 알려진 프로그래밍 언어이고,
특정 어플리케이션의 활용을 돕기 위해 이런 프로그래밍 도구가 엑셀을 포함한 오피스 제품군에 포함되어 있는 만큼
잘 활용만 한다면 손가락 하나만 까딱해도 데이터가 착!착! 처리되는 진귀한 경험을 할 수 있다.
(물론 잘~ 활용해야지... ㅎㅎ)

그럼 그렇게 잘난 친구가 어떻게 생겼고, 엑셀의 어디에 숨어있었는지부터 찾아봐야한다.


VBA Editor는 엑셀 메뉴 중 '개발 도구' 안에 있다.
그림에서 보는 것처럼 '개발 도구' 메뉴를 클릭하면 제일 왼쪽에 비쥬얼 베이직 에디터를 여는 버튼이 나온다.

만약 위 그림처럼 '개발 도구'가 안보인다면, 엑셀의 옵션에 가서 활성화시킬 수 있다.




이도 저도 귀찮다면, 단축키 (Alt + F11)를 눌러서 에디터를 열 수도 있다.



2. VBA의 간단한 예제

이제 VBA 에디터도 열었으니, 간단한 예제를 한번 만들어보자.
간단한 예제라면 누가 뭐라 해도, 'Hello, World!' 만한게 있을까? ㅎㅎ
(만성 창의력 제로인 내가 새로운 것을 할리는 없지...)

VBA의 프로그래밍 구조는 천천히 하나씩 뜯어보기로 하고,
간단한 예제이니만큼, 그냥 한번 만들어보자.

먼저, Sheet1을 마우스 오른쪽 클릭해서, 모듈을 하나 추가하자.


추가된 Module1에 아래의 코드를 똑같이 입력하자.
1
2
3
4
Sub mySubRoutine()
    Sheet1.Range("A1").Value = "Hello, World!"
End Sub
 
cs


엑셀로 돌아가서 매크로를 실행시켜보면 (단축기 Alt + F8), Sheet1의 A1 셀에 Hello, World!가 찍힌다. ㅎㅎㅎ





반응형