1. Message Box là gì?
Message Box (MsgBox) là hộp thoại hiển thị thông báo cho người dùng trong VBA.
👉 Dùng để:
Thông báo kết quả
Cảnh báo lỗi
Hỏi người dùng (Yes/No)
Debug code
2. Cú pháp cơ bản
MsgBox(prompt, buttons, title)
Trong đó:
prompt: nội dung hiển thị
buttons: kiểu nút + icon
title: tiêu đề hộp thoại
3. Ví dụ đơn giản
Sub TestMsgBox()
MsgBox "Hello VBA!"
End Sub

4. Thêm tiêu đề
Sub TestMsgBox()
MsgBox "Xin chào", , "Thông báo"
End Sub

5. Các loại nút (Buttons)
| Hằng số | Ý nghĩa |
|---|---|
vbOKOnly |
Chỉ nút OK |
vbYesNo |
Yes / No |
vbYesNoCancel |
Yes / No / Cancel |
vbRetryCancel |
Retry / Cancel |
Ví dụ:
Sub TestMsgBox()
MsgBox "Ban co muon tiep tuc?", vbYesNo, "Xac nhan"
End Sub

6. Icon trong Message Box
| Hằng số | Ý nghĩa |
|---|---|
vbInformation |
ℹ️ Thông tin |
vbExclamation |
⚠️ Cảnh báo |
vbCritical |
❌ Lỗi |
vbQuestion |
❓ Câu hỏi |
Ví dụ:
Sub TestMsgBox()
MsgBox "Loi xay ra!", vbCritical, "Error"
End Sub

7. Kết hợp Buttons + Icon
👉 Dùng dấu +
Sub TestMsgBox()
MsgBox "Ban chac chan xoa?", vbYesNo + vbQuestion, "Xac nhan"
End Sub

8. Nhận giá trị người dùng chọn
Sub AskUser()
Dim result As VbMsgBoxResult
result = MsgBox("Ban co muon tiep tuc?", vbYesNo + vbQuestion, "Hoi")
If result = vbYes Then
MsgBox "Ban chon YES"
Else
MsgBox "Ban chon NO"
End If
End Sub



9. Ví dụ thực tế trong Excel
Kiểm tra ô trước khi xử lý
Sub CheckCell()
If Range("A1").Value = "" Then
MsgBox "O A1 dang trong!", vbExclamation, "Canh bao"
Exit Sub
End If
MsgBox "Du lieu hop le!", vbInformation
End Sub

Xác nhận trước khi xóa dữ liệu
Sub DeleteData()
Dim confirm As VbMsgBoxResult
confirm = MsgBox("Ban co chan muon xoa?", vbYesNo + vbCritical, "Canh bao")
If confirm = vbYes Then
Range("A1:A10").ClearContents
MsgBox "Da xoa!"
Else
MsgBox "Da huy thao tac"
End If
End Sub


10. Mẹo nâng cao
Xuống dòng trong MsgBox
Sub TestMsgBox()
MsgBox "Dong 1" & vbNewLine & "Dong 2"
End Sub

Hiển thị nhiều thông tin
Sub TestMsgBox()
MsgBox "Ten: " & Range("A1").Value& vbNewLine & _
"Tuoi: " & Range("B1").Value
End Sub



VBA – InputBox31-03-2026 17:14
Cách viết comment (chú thích) trong VBA31-03-2026 13:46