MsgBox trong Excel VBA

Home » Thủ Thuật » Excel »


MsgBox trong Excel VBA

MsgBox trong Excel VBA

Save

Saved

Removed

0

Deal Score

0

Deal Score

0

5

/

5

(

1

bình chọn

)

Để sử dụng VBA nhằm tăng tính tương tác của bảng tính Excel, đặc biệt khi muốn gửi tin nhắn và bình luận cho người dùng, chúng ta sử dụng MsgBox trong Excel VBA.

MsgBox cơ bản nhất

Bạn có thể tạo một Excel VBA MsgBox trong trình chỉnh sửa mã VBA Excel, như được hiển thị bên dưới:

Chạy đoạn mã trên trong Excel VBA, chúng tôi sẽ nhận được kết quả sau:

MsgBox trong Excel VBA

Theo mặc định, tiêu đề của hộp thoại MsgBox trong Excel (tham số tiêu đề sẽ được thảo luận trong đoạn tiếp theo) sẽ chứa từ “Microsoft Excel”. Chúng tôi có thể thay đổi tiêu đề này bằng cách sửa đổi mã trên, như được hiển thị bên dưới:

MsgBox trong Excel VBA

Các tham số của MsgBox trong Excel VBA

Trong phần trước, nếu bạn chỉ sử dụng MsgBox như một hộp thông báo trong Excel VBA, thì tôi tin rằng “ít nhất” là đủ. Trong phần này, chúng tôi sẽ đề cập đến mã sẽ giúp chúng ta điều chỉnh MsgBox khi cần thiết.

Trong VBA, khi bạn bắt đầu viết “MsgBox” trong Sub, trình soạn thảo VBA sẽ gợi ý rằng các tham số mà MsgBox nhận được như sau:

MsgBox trong Excel VBA

Lưu ý rằng dấu nhắc, các nút, tiêu đề, tệp trợ giúp và ngữ cảnh ở đây là các tham số của MsgBox, các tham số không có dấu ngoặc vuông là các tham số bắt buộc (nhắc); các tham số trong dấu ngoặc vuông (nút, tiêu đề, tệp trợ giúp, ngữ cảnh) là tùy chọn.

Phần cơ bản của bài viết chắc hẳn mọi người đã làm quen với tham số nhắc và tiêu đề của MsgBox, phần này chúng ta sẽ tìm hiểu tham số tiếp theo là tham số Buttons.

Các thông số trợ giúp và ngữ cảnh hiếm khi được sử dụng, vì vậy chúng sẽ được đề cập trong một bài viết chuyên sâu khác.

Phần “As VbMsgBoxResult” là giá trị trả về của hàm MsgBox khi người dùng nhấp vào nút trên hộp thoại MsgBox.

Thông số nút

Tham số Buttons của MsgBox nhận các giá trị sau

Tôi đã không chủ động dịch bảng trên, nhưng giữ nguyên nó theo thông điệp của Microsoft

Tham số Buttons được chia thành nhiều nhóm khác nhau:

Ví dụ về việc sử dụng tham số Buttons trong MsgBox: Bạn có thể kết hợp nhiều giá trị của tham số này với dấu + như sau (trong VBA, dấu _ được sử dụng để kết nối dòng mã tiếp theo, thuận tiện cho chúng ta theo dõi . Dòng mã quá dài). Đối với mỗi nhóm, chúng ta chỉ có thể nhận được 1 giá trị.

MsgBox trong Excel VBA

Kết quả là, chúng tôi nhận được một MsgBox với nút OK, nút hủy, biểu tượng màu đỏ và nút OK được chọn trước (nhấn nhanh phím Enter trên bàn phím) và MsgBox này chỉ được hiển thị khi chương trình Excel được chọn ( Nếu bạn có thể Như bạn có thể thấy trong hình, cửa sổ trình khám phá tệp chồng lên phía bên phải của hộp thoại MsgBox.)

MsgBox trong Excel VBA

Nếu bây giờ chúng ta sửa đổi một chút mã trên như sau:

MsgBox trong Excel VBA

Sự khác biệt duy nhất giữa mã số 3 và mã số 2 là chúng tôi sử dụng vbSystemModal thay vì vbApplicationModal và kết quả như sau:

MsgBox trong Excel VBA

Sự khác biệt ở đây là MsgBox này sẽ nằm trên cùng của tất cả các cửa sổ khác và góc trên bên trái của hộp thoại MsgBox, và biểu tượng cũng khác với hộp thoại MsgBox trong ví dụ trước.

Kiểm tra giá trị trả về từ hàm MsgBox.

Khi hộp thoại MsgBox tương tác với người dùng xuất hiện, bạn muốn biết người dùng đã nhấp vào tùy chọn nào, bạn có thể sử dụng đoạn mã sau để kiểm tra:

MsgBox trong Excel VBA

Tương ứng với sự lựa chọn của mỗi người dùng, bạn có thể chạy tiếp các mã khác nhau, các mã VBA này, bạn có thể học trong các khóa học VBA của các chuyên gia hàng đầu của PhanMemFree.

MsgBox có hỗ trợ giọng Việt không? Câu trả lời là không, tại sao? Bởi vì đây là cách Microsoft lập trình nó. Nhưng có cách nào khác không? Câu trả lời là có, bạn có thể đọc bài viết sử dụng tiếng Việt có dấu với MsgBox VBA

Tất cả mã trong bài viết bạn có thể xem trên Gist:

giá trị
tập đoàn
Các loại
diễn tả

vbOKOnly
#1
nút
Nút xác nhận.

Hủy bỏ
#1
nút
Các nút OK và Cancel.

vbAbortRetryIgnore
#1
nút
Hủy bỏ, thử lại và bỏ qua các nút.

vbYesNoCancel
#1
nút
Các nút Có, Không và Hủy.

liệu vb
#1
nút
Các nút Có và Không.

Thử hủy bỏ
#1
nút
Các nút thử lại và hủy bỏ.

vbCritical
2
biểu tượng
Biểu tượng tin nhắn chính.

vấn đề
2
biểu tượng
Biểu tượng truy vấn cảnh báo.

Dấu chấm than
2
biểu tượng
Biểu tượng thông báo cảnh báo.

thông tin vb
2
biểu tượng
Biểu tượng thông báo thông tin.

nút mặc định vb 1
3
Nút mặc định
Đặt nút được chọn 1.

vbDefaultButton2
3
Nút mặc định
Đặt nút được chọn 2.

vbDefaultButton3
3
Nút mặc định
Đặt nút được chọn 3.

vbDefaultButton4
3
Nút mặc định
Đặt nút được chọn 4. Lưu ý rằng nếu nút trợ giúp được chứa trong vbAbortRetryIgnore hoặc vbYesNoCancel, thì chỉ có bốn nút.

Phương thức ứng dụng
4
Cách thức
Không thể truy cập Excel khi nút được hiển thị. Msgbox chỉ được hiển thị khi Excel là ứng dụng đang hoạt động.

Chế độ hệ thống
4
Cách thức
Tương tự như vbApplicationModal, nhưng hộp thông báo được hiển thị trước tất cả các ứng dụng.

vbMsgBoxHelpButton
5
khác
Thêm nút trợ giúp

vbMsgBoxSetForeground
5
khác
Đặt cửa sổ hộp thư làm cửa sổ nền trước

vbMsgBoxRight
5
khác
Căn chỉnh văn bản sang bên phải.

vbMsgBoxRtlReading
5
khác
Chỉ định rằng văn bản sẽ được đọc từ phải sang trái trên hệ thống tiếng Do Thái và tiếng Ả Rập.