Hàm MsgBox trong Excel VBA có thể trả về một kết quả trong khi MsgBox đơn giản thì không.

Tình huống:

MsgBox Function Example

Đặt một nút lệnh trên trang tính của bạn và thêm các dòng mã sau:

  1. Đầu tiên, chúng ta khai báo một biến có tên là answer kiểu Integer.

Dim answer As Integer
  1. Chúng tôi sử dụng hàm MsgBox để khởi tạo câu trả lời biến với đầu vào từ người dùng.

Hàm MsgBox, khi sử dụng dấu ngoặc đơn, có ba đối số. Phần đầu tiên được sử dụng cho thông báo trong hộp tin nhắn. Sử dụng phần thứ hai để chỉ định các nút và biểu tượng bạn muốn xuất hiện trong hộp thư. Phần thứ ba được hiển thị trên thanh tiêu đề của hộp thư.

answer = MsgBox("Are you sure you want to empty the sheet?", vbYesNo + vbQuestion, "Empty Sheet")

Lưu ý: Đặt con trỏ của bạn trên vbYesNo trong Visual Basic Editor và nhấp F1 để xem bạn có thể sử dụng các nút và biểu tượng nào khác. Thay vì các hằng vbYesNo và vbQuestion, bạn cũng có thể sử dụng các giá trị tương ứng 4 và 32.

  1. Nếu người dùng nhấp vào nút Có, Excel VBA sẽ làm trống trang tính. Nếu người dùng nhấp vào nút Không, không có gì xảy ra. Thêm các dòng mã sau để đạt được điều này.

If answer = vbYes Then

Cells.ClearContents

Else

'do nothing

End If
  1. Nhấp vào nút lệnh trên trang tính.

  2. Nhấp vào Có.

Msgbox Function in Excel VBA

Kết quả:

MsgBox Function Result