Cách sử dụng hàm MsgBox() để tạo hộp thông báo với VBA

Nội dung được viết bởi Bến Hà Trương

VBA ngôn ngữ lập trình giúp cho những người làm việc trong Excel và các chương trình Office khác tự động hóa các tác vụ trong Excel bằng cách viết cái gọi là Macro. Trong hướng dẫn này chúng ta sẽ tìm hiểu cú pháp và cách sử dụng hàm MsgBox để tạo Message Box bằng VBA.

Hộp thông báo (Message Box) là một hộp thoại được sử dụng để thông báo cho người dùng về điều gì đó hoặc cung cấp một số thông tin, hiển thị một thông báo tùy chỉnh với một số nút tùy chỉnh như Yes/ No hoặc Cancel/ Ok.

Cú pháp của hàm MsgBox để tạo Message Box với VBA

Một hộp thông báo Message Box thường bao gồm các thành phần sau:

  • Title hiển thị Tiêu đề của hộp Thông báo tức là hộp thông báo nói về cái gì. Theo mặc định, nó sẽ hiển thị tên của ứng dụng “Microsoft Excel” vì chúng ta đang mở nó trong Excel.
  • Prompt hiển thị nội dung mà chúng ta muốn thông báo trong hộp thoại.
  • Button - Chúng ta có thể thêm và tùy chỉnh các nút khác nhau trong hộp tin nhắn. Các nút chúng ta có thể thêm như Hủy bỏ, Bỏ qua, Bỏ qua, Ok , Thử lại,... OK là nút mặc định được hiển thị.
  • Close Icon -  biểu tượng đóng màu đỏ mà từ đó chúng ta có thể trực tiếp tắt Hộp thư.

Như chúng ta đã biết MsgBox là một hàm trong VBA giống như các hàm khác, nó cũng có cú pháp và đối số bên trong. Cú Pháp cụ thể như sau:

MsgBox( prompt [, buttons ] [, title ] [, helpfile, context ] )

Xem thêm khóa học tin học văn phòng online Tuyệt đỉnh VBA - Viết code trong tầm tay để tận dụng lợi thế của lập trình VBA, tự động hóa thao tác và nghiệp vụ trên Excel, tiết kiệm hàng giờ mệt mỏi vì làm báo cáo, quản lý dữ liệu.

Cú pháp của VBA Message Box trong Excel

Cách sử dụng hàm MsgBox() để tạo hộp thông báo với VBA

Trong đó:

  • Prompt - là một đối số bắt buộc. Nó hiển thị thông báo mà chúng ta thấy trong MsgBox. Văn bản ví dụ của chúng ta là “ This is Message Box Demo…”  là Lời nhắc. Chúng ta có thể sử dụng 1024 ký tự trong dấu nhắc và cũng có thể được sử dụng để hiển thị giá trị của các biến.
  • Buttons - hiển thị các nút trong hộp. Giả sử nếu tôi sử dụng vbOKCancel nó sẽ hiển thị cả  nút OK và Cancel , và nếu tôi sử dụng vbOKOnly nó sẽ chỉ hiển thị nút OK .
  • Helpfile -  mở tệp trợ giúp khi người dùng nhấp vào nút Help. Các nút Help sẽ chỉ xuất hiện nếu chúng ta viết mã cho nó. Chúng ta cũng cần chỉ định các đối số ngữ cảnh trong khi sử dụng helpfile.

LƯU Ý - Chỉ có đối số Prompt”  là bắt buộc, tất cả các đối số khác là Tùy chọn.

Hằng số Buttons trong MsgBox

Trong phần này, chúng ta sẽ đề cập đến các nút khác nhau thường được sử dụng trong Hộp thư:

  • vbOKOnly -  chỉ hiển thị nút OK .
  • vbOKCancel  - hiển thị nút OK và Cancel .
  • vbYesNo  - hiển thị các nút Yes / No .
  • vbYesNoCancel  - hiển thị các nút Yes, No và Cancel
  • vbAbortRetryIgnore  - hiển thị các nút Abort, Retry và Ignore
  • vbRetryCancel - hiển thị nút Retry và Cancel
  • vbMsgBoxHelpButton - hiển thị nút Trợ giúp .

Bây giờ. chúng ta sẽ áp dụng kiến thức của phần này để tạo các hộp thông báo cho hai ví dụ cụ thể bên dưới. Để bật Macro trong Excel, trước tiên bạn phải bật Tab Developer và sau đó thay đổi cài đặt mà Macro chạy.

Cách tạo Message Box trong Excel với VBA

Dưới đây là các ví dụ khác nhau về mã VBA Message Box trong Excel. 

Tạo Message Box đơn giản với VBA

Bước 1: Mở Tab Developer, chọn Trình soạn thảo Visual Basic từ nhóm Code hoặc bạn cũng có thể nhấn F11 để mở.

Cách tạo Message Box trong Excel với VBA

Bước 2:  Sau khi nhấn F11, cửa sổ Microsoft VBA (Visual Basic for Applications) xuất hiện. Hãy nhập đoạn code sau:

Sub Messagebox()
End Sub

Từ đoạn code phía trên, chúng ta có thể thấy rằng mã Macro mà đang viết sẽ chỉ hoạt động với trang tính chúng ta đang làm việc, tức là “ vba msgbox.xlsm ”

Bước 3: Bây giờ chúng ta sẽ gõ mã cho MsgBox để hiển thị “This is Message box Demo…!” . Mã cho nó là.

Sub Messagebox()
msgbox "This is a Message Box Demo...! "
End Sub

Bước 4: Bây giờ, chúng ta sẽ chạy đoạn code này bằng cách bấm vào RUN hoặc bấm F5. Như chúng ta có thể thấy trong hình minh họa bên dưới, Hộp thông báo được hiển thị với nút OK và Tin nhắn.

Cách tạo Message Box trong Excel với VBA

Tạo  Message Box với Biểu tượng, nút Yes, No và Tiêu đề

Trong phần này, chúng tôi sẽ hiển thị Thông báo với Icon, Yes, No, và Title. Bạn vui lòng thực hiện theo các bước sau.

Bước 1: Mở Tab Developer, chọn Trình soạn thảo Visual Basic từ nhóm Code hoặc bạn cũng có thể nhấn F11 để mở.

Bước 2:  Sau khi nhấn F11, cửa sổ Microsoft VBA (Visual Basic for Applications) xuất hiện. Hãy nhập đoạn code sau:

Sub Messagebox()
End Sub

Bước 3: Bây giờ chúng ta sẽ gõ mã cho MsgBox để hiển thị “This is Message box Demo…!” . Mã cho nó là.

Sub Messagebox()
msgbox "This is a Message Box Demo...! "
End Sub

Bước 4: Thêm các nút và tiêu đề vào đoạn code

Sub Messagebox()
msgbox "This file contains virus. Do you want to continue", vbYesNo + vbExclamation, "This is Title"
End Sub

Bước 5: Như chúng ta có thể thấy hộp thông báo đó được hiển thị với các hằng số Biểu tượng (Dấu chấm than), Có, Không và Tiêu đề.

Cách tạo Message Box trong Excel với VBA

Một số điều cần ghi nhớ khi sử dụng hàm MsgBox ()

  1. Message Box được sử dụng để hiển thị thông báo hoặc cảnh báo trên màn hình tương tự như hộp thoại.
  2. Đối số“Prompt” là bắt buộc, tất cả các đối số khác là Tùy chọn .
  3. Nút OK  là nút mặc định.
  4. Mã VBA bị tạm dừng khi Message Box được hiển thị.

Như vậy, chúng ta đã tìm hiểu cách sử dụng hàm MsgBox() để tạo message Box với VBA. Đừng quên tham gia Gitiho ngay hôm nay nhé, chúng tôi vẫn còn rất nhiều mẹo và thủ thuật tin học văn phòng thú vị khác chờ bạn khám phá.

Nếu công việc của bạn liên quan nhiều đến quản lý, phân tích dữ liệu và làm báo cáo trên bảng tính thì giỏi Excel thôi chưa đủ. Nếu chỉ dùng Excel, bạn sẽ thường xuyên phải OT đến mỗi kỳ làm báo cáo, stress vì sai dữ liệu do nhập thủ công, hay gặp vấn đề các hàm load chậm do dữ liệu quá nặng,...

Có lẽ bạn đã từng nghe ở đâu đó về công cụ lập trình VBA trên Excel, giúp bạn tiết kiệm tối đa thời gian làm việc nhờ làm báo cáo tự động, phân tích và xử lý số liệu chính xác tuyệt đối, đặc biệt công cần lọ mọ sửa thủ công,...

Nhưng bạn không dám nghĩ một ngày nào đó mình sẽ dùng VBA bởi vì mình không biết lập trình, sửa code và gỡ lỗi mã. Tin mình đi, bạn hoàn toàn có thể thành thạo công cụ này ngay cả khi không giỏi Excel, không biết lập trình với khóa học VBAG01: Tuyệt đỉnh VBA - Tự động hóa Excel với lập trình VBA tại Gitiho.

Tất tần tật những kiến thức từ cơ bản đến nâng cao về cách sử dụng VBA trong Excel sẽ được đề cập khiến mọi thao tác thủ công trên Excel gần như được loại bỏ hoàn toàn. 

Hãy nhấn vào Học thử hoặc Đăng ký ngay để cảm nhận sự “vi diệu” mà VBA mang lại cho công việc của bạn nhé!

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông