이전 포스팅에는 셀에 값을 기록했다. 직접 Range("A1") = "Hello World!"라는 코드를 타이핑 하였다. 셀에 값을 쓰는 것은 VBA에 있어서 가장 기초가 되는 부분이다. 셀의 값을 읽는 방법은 나중에 차차 설명하도록 하겠다. 이번 포스팅에선 값을 셀이 아닌 다른 방법으로 표현 하는 방법 중 하나인 MsgBox라는 명령어에 대해 소개하겠다.

엑셀 버전 : MS Excel 2013

설명에 앞서.. VBAVisual Basic 이지만 .NET Visual Basic과는 전혀 다른 언어이다. 구글링에 꼭 참고하길 바란다. 검색어 앞에 꼭 VBA를 붙여서 검색하길 바란다. 또는 VB 6.0 으로 검색해도 나쁘지 않겠다!

MsgBox ?

질문 전에 일단 코드부터 실행을 해보자. 이제 스스로 모듈을 만들어서 코드를 실행 하길 희망하는 마음으로 적절히 생략하고 넘어가겠다. 사실 난 Hello World!를 참 좋아한다!

Sub TestMsgBox()
  MsgBox "Hello World!"
End Sub

MsgBox 표시

보이는 그림이 나타나면 정상이다!
참고로 VBA는 대소문자를 구분하지 않는 언어이기 때문에 그냥 msgbox 라고만 입력해도 문제없이 코딩할 수 있다.

Parameters

MsgBox parameters

코딩을 하다 보면 위와 같은 메세지를 볼 수 있다. 특별히 설정을 건드리지 않았다면 다 보일것이다. Excel 2000VBA에서부터 봐왔던 메세지이다. 저기서 Prompt, Buttons, Title, HelpFile, Context가 각각 의미하는 바가 무슨 뜻인지 설명 하는 것은 이번 주제를 벗어나기 때문에 자세히 설명하진 않겠다. 다만 직접 찾아봐도 좋고, 언젠가 있을 MsgBox에 대한 고급편을 기다려도.. 쩝..
우리가 입력한 "Hello World!" 는 Prompt 에 해당하는 입력이다. 일단 당분간은 MsgBox 어쩌구이렇게 만 쓰도록 해보자. 물론 더 해도 좋고.

연습

연속된 MsgBox 를 사용해보자!

MsgBox "Hello World!"
MsgBox "안녕?!"
MsgBox 123

세개의 MsgBox가 차례로 뜨면 성공이다!
문자열 뿐만 아니라 숫자도 보여줄 수 있다. 다른 언어에선 타입이 중요한데 VBA는 조금 덜 중요하다. 타입에 대한 얘기도 여기서 생략.

이번엔 셀에 쓰여져 있는 값을 MsgBox로 출력해보자.

  1. A1셀에 "아무값이나 써보자" 를 입력한다.
  2. 코딩 : MsgBox Range("A1")
  3. 실행!

마무리

MsgBox는 앞으로의 설명에서 정말 정말 많이 쓰일 명령어이다. 사용법이 어렵진 않으니 꼭 익혀두길 바랍니다.