엑셀에서 다양한 함수를 제공하여 계산을 하는 데 이용할 수 있습니다. 마찬가지로 VBA에서도 이렇게 계산을 하는데 사용할 수 있는 함수를 제공합니다. VBA에서 제공하는 함수에는 어떤 것들이 있는지 알아보고 사용방법 등에 대해 자세히 알아보겠습니다.
이번에는 VBA에서 제공하는 함수 중 MsgBox에 대해 알아보겠습니다.
1. MsgBox 함수 사용 방법
매크로를 실행하면 사용자에게 메시지를 전달하거나 어떤 데이터를 입력받을 때 메시지 창을 띄웁니다. 이와 같이 메시지 창을 띄우려면 VBA에서는 MsgBox 함수를 이용해야 합니다.
MsgBox 함수를 사용할 때는 다음과 같이 작성하여 사용합니다.
MsgBox ( 메시지 창에 표시할 내용, 버튼 구성, 창 제목)
메시지 창에 표시할 내용 : 출력할 메시창에 쓰일 내용을 입력
버튼 구성 : 메시지 창에 나타낼 아이콘 모양 및 사용할 버튼 내용을 입력
창 제목 : 메시지 창 위에 표시될 제목 입력
MsgBox 함수 사용시 버튼 구성과 창 제목은 생략 가능합니다.
MsgBox 함수 사용에 대한 더 자세한 내용은 아래 링크된 이전 글을 확인하시기 바랍니다.
2. MsgBox 함수로 메시지 창 만들기
엑셀에서 VBE 창을 열고 Module을 추가합니다.
MsgBox 함수를 이용하여 경고 메시지창을 화면에 띄우려면 다음과 같이 Module 코드 창에 코딩합니다.
Dim s As String
Public Sub 경고_메시지()
s = MsgBox("경고", vbExclamation + vbOKOnly, "경고 메시지")
End Sub
문자열 변수인 s를 선언하고 메시지 창에 '경고'라는 내용을 나타내고 경고 아이콘과 확인 버튼을 추가하였으며 메시지 창 제목을 '경고 메시지'로 명했습니다. 이를 실행하면 [그림 1]과 같이 화면에 출력됩니다.
이번에는 질문 메시지 창을 출력해보겠습니다. 버튼은 확인과 취소 버튼 두가지를 나타나게 하겠습니다.
Dim s As String
Public Sub 질문_메시지()
s = MsgBox("당신은 결혼하였습니까?", vbInformation + vbOKCancel, "혼인 확인")
End Sub
이 코딩을 실행하면 [그림 2]와 같이 화면에 출력됩니다.
[그림 2]를 보시면 확인 버튼에 기본 선택되어진 것을 알 수 있습니다. MsgBox 함수 코딩 시 처음에 쓰인 버튼이 기본 선택되며 이렇게 기본 선택된 버튼은 메시지 창에서 엔터를 눌렀을 때 실행되는 버튼을 말합니다.
위의 질문 메시지 창을 띄우는 코딩을 다음과 같이 변경하면 취소 버튼이 기본 버튼으로 바뀝니다.
Dim s As String
Public Sub 질문_메시지()
s = MsgBox("당신은 결혼하였습니까?", vbInformation + vbOKCancel + vbDefaultButton2, "혼인 확인")
End Sub
빨간색으로 표시된 ' + vbDefaultButton2 '를 버튼 구성에 추가하였습니다. 이것은 두번째 버튼을 기본 버튼으로 지정하라는 인수입니다.
이 코드를 실행하면 [그림 3]과 같이 취소 버튼이 기본으로 선택되어 질문 메시지 창이 출력됩니다.
'엑셀 > VBA' 카테고리의 다른 글
VBA 내장 함수 - Left, Mid, Right 함수 (0) | 2021.09.30 |
---|---|
VBA 내장 함수 - InputBox 함수 (0) | 2021.09.29 |
엑셀 VBA - Function 프로시저 인수 지정 없이 사용 (0) | 2021.09.27 |
엑셀 VBA - Function 프로시저 (0) | 2021.09.26 |
엑셀 VBA 반복문 For Each...Next문 사용하기 (0) | 2021.09.25 |