본문으로 바로가기

관련글

2012/12/10 - [Excel VBA/VBA 배우기] - 01 엄마도 따라 할 수 있는 Excel VBA - 시작

2012/12/10 - [Excel VBA/VBA 배우기] - 02 엄마도 따라 할 수 있는 Excel VBA - Range 사용하기

2012/12/28 - [Excel VBA/VBA 배우기] - 03 엄마도 따라 할 수 있는 Excel VBA - 셀 선택하기, 값 가져오기, 바꾸기

2013/01/08 - [Excel VBA/VBA 배우기] - 04 엄마도 따라 할 수 있는 Excel VBA - for문 if문 사용하기

2013/01/09 - [Excel VBA/VBA 배우기] - 05 엄마도 따라 할 수 있는 Excel VBA - 글자 연결하기 &

2013/01/09 - [Excel VBA/VBA 배우기] - 06 엄마도 따라 할 수 있는 Excel VBA - 변수 선언하기

2013/01/09 - [Excel VBA/VBA 배우기] - 07 엄마도 따라 할 수 있는 Excel VBA - 메세지 창 띄우기

2013/01/09 - [Excel VBA/VBA 배우기] - 08 엄마도 따라 할 수 있는 Excel VBA - 반복문 배우기(For Next문)

2013/01/11 - [Excel VBA/VBA 배우기] - 09 엄마도 따라 할 수 있는 Excel VBA - IF문(조건문) 배우기

2013/01/14 - [Excel VBA/VBA 배우기] - 10 엄마도 따라 할 수 있는 Excel VBA - 셀 주소 알아내기

2013/01/14 - [Excel VBA/VBA 배우기] - 11 엄마도 따라 할 수 있는 Excel VBA - 다른 기능 호출하기

2013/01/18 - [Excel VBA/VBA 배우기] - 12 엄마도 따라 할 수 있는 Excel VBA - VBA에서 날짜 사용하기



Excel VBA를 이용해서 그린 곡선. VBA를 이용하면 이렇게 다양한 작업을 쉽게 할 수 있습니다.

01 엄마도 따라 할 수 있는 Excel VBA - 시작

Excel에 무궁무진한 기능이 많다고들 합니다. 그 이유는 VBA가 프로그래밍 언어이기 때문이에요.
프로그래밍이라고 겁먹을 것 없습니다. 엄마도 따라할 수 있게 화면 하나하나 설명해 드릴테니까요.

필자는 문과 출신에 프로그래밍 경험이 없었습니다. 하지만 Excel VBA를 통해 프로그래밍에 입문해서 지금은 개발자로 일하고 있습니다..

Excel VBA는 가장 접근하기 쉬운 프로그래밍 언어가 아닐까 합니다.


먼저 VBA 스크립트 작성법을 따라해볼게요.

엑셀 화면입니다. 버젼은 어떤 버젼이라도 상관 없습니다.


상단 메뉴에서 '개발자 도구 - Visual Basic' 혹은 단축키 'Alt + F11'로 들어가면 아래와 같은 화면이 나옵니다. 상단 메뉴에 '개발자 도구'가 없을 수도 있는데 그냥 'Alt + F11'누르고 들어가면 됩니다.


아래와 같이 'Microsoft Excel 개체'에서 마우스 오른쪽 클릭 '삽입 - 모듈'을 선택합니다.



좌측에 '모듈'폴더가 생기고 'Module1'이라는 모듈이 생긴 것을 볼 수 있습니다. '모듈'폴더 아래 있는 'Module1'이라는 파일에 내가 하고 싶은 기능을 입력하는 것을 VBA프로그래밍 이라고 합니다.

VBA를 작성할 수 있는 이 화면을 VBE(Visual Basic Editor)라고 합니다.




이제 VBA를 이용하여 Sheet1의 'A1'셀에 'hello world'를 출력 해볼게요. 일단 문자 출력을 해보면 '감'이 온답니다. 문자 출력을 하고 '더하기 기능'도 만들고 '빼기 기능'도 만들다 보면 나중에는 원하는 복잡한 기능을 만들고 있는 자신을 발견할 수 있을거에요.


위와 같이 입력해봅시다. 아래의 코드를 복사볼혀넣기 하면 됩니다.

1
2
3
4
Sub 헬로월드()
    'Sheet1의 "A1"에 "hello world"를 출력 하시오.
    Sheet1.Range("A1").Value = "hello world"
End Sub
cs


다시 엑셀 화면으로 돌아와서 방금 작성한 매크로를 실행해 볼게요.

'개발자 도구 - 매크로'를 선택하거나 Alt + F8을 누릅니다.


아까 작성했던 '헬로월드'라는 매크로가 나옵니다. 우측에 '실행'버튼을 눌러볼게요.


'hello world'가 보이시나요? 보이신다면 잘 만든 겁니다.

앞으로는 'hello world'가 나오는 기능 대신에 위와 같이 곡선을 그리는 기능 등 여러분들이 원하는 각종 기능들을 만들어 볼 거에요.


소스코드를 분석해 볼게요.

1
2
3
4
Sub 헬로월드()
    'Sheet1의 "A1"에 "hello world"를 출력 하시오.
    Sheet1.Range("A1").Value = "hello world"
End Sub
cs


서브루틴(Subroutine)

Sub 헬로월드()

End Sub

VBE에서 특정 기능을 수행하는 하는 코드의 묶음을 서브루틴(Subroutine)이라고 합니다. 시작은 'Sub 펑션이름() '으로 시작하고 'End Sub'로 끝납니다.


'Sheet1의 "A1"에 "hello world"를 출력 하시오.

문장 앞에 ' 를 붙이면 '주석'이에요. VBE가 실행 될 때 저 줄은 실행을 하지 않고 건너띕니다. 사용자가 나중에 알아보기 편하라고 적는 것이고 특정 기능이 없는 것을 '주석'이라고 합니다.


Sheet1.Range("A1").Value = "hello world"

Sheet1의 "A1"열에 "hello world"라고 입력하라는 뜻이에요. 그러면 "A1"대신에 "A1:A100"이라고 입력하면 어떻게 될까요?

1
2
3
4
Sub 헬로월드()
    'Sheet1의 "A1"에 "hello world"를 출력 하시오.
    Sheet1.Range("A1:A100").Value = "hello world"
End Sub
cs


소스코드에서 F5를 눌러서 실행 해봅시다.


아래와 같이 A1:A100열에 모두 "hello world"가 들어갑니다.


이렇게 바꿔봅시다. Sheet1.Range("A1:A100").Value = "good bye world"


실행하면 아래와 같이 나옵니다.


감이 좀 오시나요? "" 따옴표 안에 있는 내용을 수정하면 됩니다. ""따옴표가 빠지면 에러가 납니다.


end.










신고

댓글을 달아 주세요

  1. Gunhyun 2013.03.15 07:44 신고

    늦었지만 오늘부터 시작해 보려고 합니다. 많은 도움 부탁 드릴께요.

  2. 감사합니다 2014.10.13 13:11 신고

    쉬운예제로 시작하니까 너무 좋으네요~ 많은 가르침 부탁드리겠습니다..bbb

  3. J 2014.11.19 09:52 신고

    오늘안에 다 끝내보려고 해요! 재밌어요 ㅋㅋ 좋은 글 감사합니다

  4. hd 2015.07.25 12:47 신고

    열공중입니다. 감사드려요~!

  5. 2016.01.05 14:12

    비밀댓글입니다

  6. deadlock 2016.09.27 09:25 신고

    왜 아무것도 안보이는 걸까요...

  7. nick 2016.09.28 14:04 신고

    먼저 좋은 정보 알려주셔서 감사합니다. 그런데 Microsoft Excel 개체 -> 모듈 삽입 -> 실행하면 엑셀이 멈춥니다. 다른방법으로 sheet1 더블클릭 -> 실행하면 돌아가고요. 이건 왜그런가요?ㅠㅠ

  8. 최호경 2016.10.21 17:14 신고

    하나씩 따라하니까 쉽고 재밌어여

  9. BlogIcon 스쿨디포 2016.11.29 13:14 신고

    좋아요 (>ㅂ<)b 좋아요, 추천, 이런 버튼이 없네요. ㅠㅅㅠ 제목처럼 정말 쉽게 써 놓으셨네요. 강의를 듣거나 책을 살까 하고 있었는데 이 블로그부터 봐야겠어요. 고맙습니다 : )

  10. vextor 2017.02.05 13:47 신고

    와 진짜 쉽게 설명해주셨네요 ㅠㅠ 대단하심니다!bb 잘배워가겠습니당

  11. 김엑셀 2017.05.12 04:38 신고

    검색하다 우연히 들어왔는데 설명도 친절하게 하시고 좋네요^^ 주말간에 기초 정도는 마스터해보렵니다. 감사합니당

  12. bluewhale 2017.05.18 09:25 신고

    완전 쉽게 잘 설명해주셔서 이해하기 정말 쉬웠습니다! 역시 문과출신 ㅋㅋ 감사합니다!

티스토리 툴바