[VB] msgbox 사용방법 총정리

모든 프로그래밍을 할 때 마찬가지이겠지만, 사용자에게 어떤 내용을 알려준다거나 사용자가 다음 프로세스로 어떤 것을 선택 할 수 있도록 하기 위해서는 메시지박스를 보여주는 방법이 최고입니다.

아래는 VB에서 메시지 박스를 출력 하는 방법을 정리 한 것입니다.

msgbox

기본 사용 방법

VB에서 사용자에게 메시지 박스를 보여주는 명령어는 msgbox 입니다. 기본적인 사용 방법은 아래와 같습니다.

msgbox([메시지 박스 내용], [메시지 박스 타입], [메시지 박스 제목])

위 msgbox 명령어 중 메시지 박스 내용 부분에만 원하는 내용을 입력하면 사용자에게 해당 내용을 보여줄 수 있습니다. 그 예제는 아래와 같습니다.

msgbox("사용자에게 보여줄 메시지 박스 내용")

위 명령어를 실행 하면 아래와 사용자는 아래와 같은 메시지 박스를 볼 수 있습니다.

아주 기본적인 메시지 박스

간단하죠?

제목 바꾸기

메시지 박스의 제목을 바꾸기 위해서는 msgbox 의 세번째 인수에 원하는 제목을 넣어주면 됩니다.

msgbox("사용자에게 보여줄 메시지 박스 내용", , "메시지 박스 제목")

위 코드를 실행 하면 아래와 같은 메시지 박스를 볼 수 있습니다.

제목이 변경된 메시지 박스

메시지 박스 타입 변경

위 기본적인 메시지 박스에서 사용자는 확인 버튼이나 우측 상단의 종료 버튼만 누를 수 있습니다. 다른 말로 하자면 위 메시지 박스는 사용자에게 특정 정보만을 전달 하는 메시지 박스 입니다.

사용자가 메시지 박스를 보고 특정 상황에 대한 선택을 하도록 하게 하기 위해서는 메시지 박스의 형태를 바꾸어 주어야 합니다. 이를 위해 msgbox 명령어의 두 번째 인수를 상황에 맞게 변경 해보도록 합시다.

vbOKOnly

msgbox("사용자에게 보여줄 메시지 박스 내용", vbOKOnly, "메시지 박스 제목")

vbOKOnly 는 가장 기본적인 메시지 박스 형태입니다. 사용자는 메시지 박스에서 확인 버튼만 볼 수 있습니다. 특별히 인수를 넣지 않아도 기본으로 실행 되는 메시지 박스 형태입니다.

vbOKOnly 로 반환 되는 값은 아래와 같습니다.

반환값반환값(숫자)
vbOK1사용자가 확인을 누르거나 메시지 박스를 닫았을 때

vbOKCancel

msgbox("사용자에게 보여줄 메시지 박스 내용", vbOKCancel, "메시지 박스 제목")

vbOKCancel 은 사용자에게 확인과 취소 버튼을 보여줍니다. 예를 들어 다음 작업을 실핼 할 지 말지 사용자가 결정 하도록 할 때 사용할 수 있습니다.

vbOKCancel 의 반환값은 아래와 같습니다.

반환값반환값(숫자)
vbOK1사용자가 확인을 선택 했을 때
vbCancel2사용자가 취소를 선택 하거나 메시지 박스를 닫았을 때

vbYesNo

vbYesNo 는 사용자에게 예와 아니오 버튼을 보여줍니다. 사용자는 예와 아니오 둘 중 하나만 선택 해야 하며 메시지 박스의 우측 상단 창 종료 버튼을 이용해 창을 닫을 수 없습니다. vbOKCancel 과 비슷하지만 조금 다르네요.

vbYesNo 의 반환 값은 아래와 같습니다.

반환값반환값(숫자)
vbYes6사용자가 예를 선택 했을 때
vbNo7사용자가 아니오를 선택 했을 때

vbYesNoCancel

vbYesNoCancel 은 vbYesNo 에 취소 버튼을 추가 한 것입니다. 사용자는 예, 아니오, 취소 버튼 중 하나를 선택할 수 있으며, 우측 상단의 창 종료 버튼을 사용 할 수 있습니다.

vbYesNoCancel 의 반환값은 아래와 같습니다.

반환값반환값(숫자)
vbYes6사용자가 예를 선택 했을 때
vbNo7사용자가 아니오를 선택 했을 때
vbCancel2사용자가 취소를 선택 하거나 메시지 박스를 닫았을 때

vbRetryCancel

vbRetryCancel 은 사용자에게 재시도와 취소 버튼 중 하나를 선택 하도록 합니다. 사용자는 메시지 박스를 창 종료 할 수 있습니다.

vbRetryCancel 의 반환값은 아래와 같습니다.

반환값반환값(숫자)
vbRetry4사용자가 재시도를 선택 했을 때
vbCancel2사용자가 취소를 선택 하거나 메시지 박스를 닫았을 때

메시지 박스 반환값 사용 방법

상황에 따라 다양한 메시지 박스를 이용하면 되는데, 그 반환값은 어떻게 사용하면 될까요. 아래 코드는 반환 값을 사용하는 방법입니다. vbYesNoCancel 유형의 메시지 박스를 예제로 보겠습니다.

Dim Res as Double '숫자로 된 반환 값을 담을 변수

Res = Msgbox("메시지 박스 내용", vbYesNoCancel, "메시지 박스 제목")

If Res = 6 Then

	'사용자가 예를 선택 했을 때 실행 할 코드

ElseIf Res = 7 Then

	'사용자가 아니오를 선택 했을 때 실행 할 코드

Else

	'그 외의 경우
	'즉 사용자가 취소를 선택 하거나 창 종료 했을 경우

End If

위 방법은 메시지 박스의 반환값을 변수에 담아 각 상화에 맞는 코드를 실행하는 방법 입니다. 보다 더 간단하게 사용하려면 아래와 같이 할 수 있습니다. vbOKCancel 을 사용한 예제입니다.

If Msgbox("메시지 박스 내용", vbOKCancel, "메시지 박스 제목") = vbOK Then

	'사용자가 확인을 선택 했을 때 실행 할 코드

Else

	'그 외의 경우 
	'즉 사용자가 취소를 선택 했을 경우 실행 할 코드

End If

참고자료

위 내용에서는 메시지 박스의 몇 가지 형태에 대해서만 다루었지만, 메시지 박스를 훨씬 다양하게 다룰 수 있는 방법이 있습니다. 아래 링크를 참고 하세요.