'전체 글'에 해당되는 글 29건

  1. 2015.10.27 [엑셀 VBA #1] 엑셀 VBA 왜 필요하고 어떻게 배워야 할까? 2

"엑셀 VBA, 왜 필요할까?"


           



컴퓨터가 발명된 이래, 사람의 뇌를 컴퓨터로 이식하려는 노력은 끊임없이 이어지고 있습니다.

사람의 뇌가 컴퓨터보다 못한 부분도 물론 있긴 하지만, 아직 컴퓨터가 따라오지 못하는 부분도 많이 존재합니다.

엑셀 또한 마찬가지입니다. 

엑셀 자체로도 아주 뛰어난 프로그램이긴 하지만, 엑셀은 분명한 한계를 지니고 있습니다.


엑셀의 가장 기본적인 기능을 예를 들어서 표현하자면 아래와 같습니다.

① "  '셀 A'의 값과 '셀 B'의 값을 더해서 '셀 C'에 출력하라.  "

하지만 위 명령이 이렇게 바뀐다면 어떨까요?

② "  '셀 A'의 값과 '셀 B'의 값을 더하는 행위를 100번 시행하고, 그 값을 '셀 C'에 출력하라.  "


엑셀은 1번과 같은 명령은 처리할 수 있지만, 2번과 같은 명령은 처리하지 못합니다.

이유가 무엇일까요?


사실 예제 ①의 경우에도 약간 오류가 있습니다.

엑셀은 사용자의 '명령'을 받는 프로그래밍 언어가 아닙니다.

엑셀은 내장된 함수로 구현할 수 있는 범위에서만 작동합니다.


엑셀에는 2013버전 기준으로 461개의 함수가 내장되어 있습니다.

엑셀의 각 셀은 제공되는 함수를 사용하여 다른 셀과 연계하여 연산을 진행합니다.

하지만 함수로 정의되지 않은 명령들(복잡한 다중 조건문, 반복문)등은 사용자가 직접 명령을 만들어줘야 하는데,

이 때 필요한 것이 엑셀 VBA입니다.


즉, 예제 ①의 경우는 간단하게 '+' 연산자로 연산식을 만들 수 있지만,

예제 ②의 경우는 저런 기능을 하는 함수가 없기 때문에 엑셀 자체에서는 구현할 수 없다는 것입니다.

따라서 엑셀은 사용자들이 직접 명령을 내릴 수 있게 프로그래밍 툴인 VBA(Visual Basic Advanced)를 빌려오게 됩니다.





엑셀 VBA, 어떻게 배워야 하나?


결론부터 말하자면, 엑셀 VBA는 프로그래밍 지식이 없어도 충분히 독학할 수 있습니다.

물론 전문가처럼 마스터할 수는 없지만, 자신이 필요로 하는 기능을 구현하는 정도까지는 누구나 할 수 있습니다. 

하지만 독학이 '책을 사서 혼자 공부하는 것'은 절대 아니라는것을 명심하셔야 합니다.

엑셀 VBA는 지극히 실용적인 지식입니다. '공부'라는 단어는 엑셀 VBA와 어울리지 않습니다.

직접 해보셔야 합니다. 



프로그래밍 지식이 전혀 없다면 자기 자신을 돌도 지나지 않은 아기라고 생각하세요.

아기들은 본능적으로 서서 걸으려고 시도합니다. 

자꾸 넘어져도 계속 일어나려고 애를 씁니다.

하지만 아기들은 '걷는 법'이라는 책을 사서 공부하지는 않습니다.

이상한 비유이긴 하지만, 엑셀 VBA도 똑같습니다.

어떻게 하는지 모르더라도 일단 시도해 보세요.

'자기가 필요한게 뭔지, 엑셀로 구현해야 하는 기능이 무엇인지 생각을 하고, 그 기능을 직접 알아내셔서 적용시켜 보는 그 과정'

이 과정이 엑셀 VBA를 독학하는 과정입니다.

개인적인 이야기를 하자면 저는 엑셀 VBA를 군생활 할 때 처음 접했습니다.

당시에 부대 PC 윈도우즈 OS를 대대적으로 업그레이드 하면서 일부 프로그램이 작동을 안하게 된 적이 있었지요.

주소를 검색하는 프로그램이었는데, 인트라넷으로는 외부 파일을 가져오기도 힘들고, 다른 프로그래밍 툴을 구하기도 힘들었기에

그나마 엑셀에 기본 내장되있던 엑셀 VBA를 사용해서 주소를 검색하는 엑셀 프로그램을 만들었었습니다.

프로그래밍 지식이 하나도 없었음에도 불구하고, 엑셀 VBA에 내장되어 있는 도움말만으로도 충분했습니다.

도움말으로 공부하라는 것이 아닙니다. 저는 무엇이 중요한가를 말하고 싶습니다.

자기 자신이 필요로 하는 기능을, 처음엔 당연히 허접하겠지만, 그래도 한 번 만들어 보세요.

인터넷에서 검색해보고, 다른 사람들이 올려놓은 예제를 참고하면 충분히, 충분히 만들 수 있습니다.

얼마나 많은 명령어를 외우고 있느냐가 중요한 것이 아닙니다.

인터넷에 검색하면 명령어는 1분이면 찾을 수 있습니다.

'실제로 구상하는 기능을 엑셀 VBA를 사용하여 엑셀에 응용시킬 수 있는가?'

이것이 엑셀 VBA의 관건이고, 공부해야하는 능력입니다.

단언컨데, 절대로 책에선 배울 수 없습니다. 실천만이 답입니다.

다음 포스팅은 좀 더 구체적인 독학 방법으로 찾아오겠습니다.






위 포스팅에 사용된 아이콘 이미지는 www.flaticon.com의 Freepik에 의하여 제작되었습니다

Icon made by Freepik from www.flaticon.com










 




Posted by Simon K
: