Lê Nguyễn Nhật Phương
Lê Nguyễn Nhật Phương
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 712 lượt xem

Làm thế nào để sử dụng hàm InputBox trong VBA Excel?

Aug 11 2021

Trong Excel, chúng ta có nhiều cách để lấy dữ liệu đầu vào. Chúng ta có thể nhận dữ liệu đầu vào bằng cách sử dụng các đối số hàm, sử dụng các ô và phạm vi Excel làm vùng nhận đầu vào và sau đó truy xuất các giá trị từ đó. Bạn cũng có thể sử dụng biểu mẫu người dùng để nhận thông tin đầu vào từ người dùng. Nhưng Excel cung cấp thêm một cách để lấy thông tin đầu vào từ người dùng được gọi là InputBox. Hãy cùng Gitiho tìm hiểu về hàm InputBox trong VBA Excel trong bài viết dưới đây nhé!

Xem thêm: Hướng dẫn cách viết các hàm trong Excel chi tiết, dễ hiểu nhất

Tuyệt đỉnh VBA - Viết code trong tầm tay

InputBox trong VBA là gì?

InputBox trong VBA là một loại biểu mẫu người dùng được thiết kế sẵn. Bạn có thể sử dụng một InputBox để nhập nhiều loại đầu vào. Nhưng một InputBox chỉ có thể nhận được một loại đầu vào tại một thời điểm nhất định. Excel có hai loại InputBox. Một là InputBox đơn giản và một là Application InputBox. Hộp nhập có nhiều đối số để xử lý các loại đầu vào khác nhau. Chúng ta sẽ tìm hiểu về Simple VBA Inputbox (Inputbox đơn giản) trong bài viết này.

Cú pháp InputBox đơn giản trong VBA

InputBox đơn giản này có thể được sử dụng trực tiếp trong VBA vì nó là một hàm.

Cú pháp của hàm InputBox là:

InputBox(prompt, [Title], [Default], [Xpos], [YPos], [HelpFile], [Context])

Trong đó:

prompt: Đây là đối số bắt buộc duy nhất. Nó là một biểu thức chuỗi được hiển thị dưới dạng thông báo trong hộp thoại. Độ dài tối đa của prompt là khoảng 1024 ký tự (tùy thuộc vào độ rộng của các ký tự được sử dụng). Nếu prompt có nhiều hơn một dòng, bạn có thể tách các dòng bằng cách sử dụng ký tự xuống dòng (Chr (13)), ký tự xuống dòng (Chr (10)) hoặc tổ hợp ký tự xuống dòng ((Chr (13)) & (Chr (10)) giữa mỗi dòng.

[title]: Tùy chọn. Nó là một biểu thức chuỗi được hiển thị trên thanh tiêu đề của hộp thoại. Nếu bạn bỏ qua tiêu đề, tên hộp thoại sẽ được đặt trong thanh tiêu đề. Nếu bạn đang sử dụng Excel, nó sẽ hiển thị Microsoft Excel.

[default]: Tùy chọn. Nó là một biểu thức chuỗi được hiển thị trong hộp văn bản dưới dạng phản hồi mặc định nếu không có đầu vào nào khác được cung cấp. Nếu bạn bỏ qua mặc định, hộp văn bản sẽ hiển thị là trống.

[xpos]: Biểu thức số xác định, là khoảng cách nằm ngang của cạnh trái hộp thoại từ cạnh trái của màn hình. Nếu xpos bị bỏ qua, hộp thoại sẽ được căn giữa theo chiều ngang.

[ypos]: Biểu thức số chỉ định khoảng cách theo chiều dọc của cạnh trên hộp thoại tính từ đầu màn hình. Nếu bỏ qua ypos, hộp thoại sẽ được định vị theo chiều dọc, khoảng một phần ba chiều dọc màn hình từ trên xuống.

[helpfile]: Biểu thức chuỗi xác định tệp Help, sẽ sử dụng để cung cấp trợ giúp theo ngữ cảnh cho hộp thoại. Nếu tệp Help được cung cấp, context cũng phải được cung cấp.

[context]: Biểu thức số là số ngữ cảnh được Help chỉ định cho chủ đề Trợ giúp thích hợp. Nếu context được cung cấp, một tệp Help cũng phải được cung cấp.

Hãy xem một số ví dụ để hiểu cách sử dụng hàm InputBox này nhé!

Xem thêm: Hướng dẫn cách tạo input box để nhập thông tin trong Google Sheets

Ví dụ về hàm InputBox trong VBA Excel

Ví dụ 1: Nhập thông điệp để nói lời chào với người dùng

Giả sử mình muốn gử lời chào đón tới người dùng, mình sẽ hỏi tên của người dùng và chào họ là "Hello UserName". Để làm được điều đó, mình sẽ sử dụng đoạn mã như sau:

Sub InputBoxExample()
user_name = InputBox("Please Enter Your Name.")
MsgBox ("Hello " & user_name & "!")
End Sub

Khi bạn chạy đoạn mã trên trong VBA, nó sẽ nhắc một biểu mẫu người dùng với tiêu đề "Please Enter your Name" bằng hộp văn bản hiển thị bên dưới.


Bạn có thể thấy rằng cửa sổ được đặt tên là "Microsoft Excel" và hộp văn bản trống. Bởi vì chúng ta đã không sử dụng các đối số để đặt giá trị cho chúng.

Ví dụ 2: Đặt Title (Tiêu) đề của hộp nhập là Greet User và đặt Default Value (giá trị mặc định) là User

Trong ví dụ này, chúng ta sẽ đặt tiêu đề là chào người dùng để VBA không thể hiển thị tên mặc định và chúng ta sẽ đặt giá trị mặc định là User.

Sub InputBoxExample()
user_name = InputBox("Please Enter Your Name.", "Greet User", "Uesr")
MsgBox ("Hello " & user_name & "!")
End Sub

Khi bạn chạy đoạn mã trên, đây là kết quả bạn sẽ nhận được.



Các đối số khác như xposypos không được sử dụng nhiều. Về cơ bản, chúng được sử dụng để đặt vị trí của biểu mẫu người dùng trên các cạnh Excel. Hai đối số cuối cùng là helpfile và context được sử dụng để cung cấp thông tin theo ngữ cảnh cho người dùng.

Vậy là bây giờ bạn có thể sử dụng InputBox - hộp nhập liệu để nhận đầu vào từ người dùng trong Excel bằng cách sử dụng chức năng của hàm InputBox.

Xem thêm: Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Kết luận

Gitiho hy vọng chúng mình đã giải thích đủ về hàm InputBox trong VBA Excel và nó thực sự hữu ích cho bạn. Nếu bạn có bất kỳ câu hỏi nào liên quan đến bài viết này hoặc về bất kỳ chủ đề VBA nào khác, hãy cho chúng mình biết trong phần bình luận bên dưới. Và đừng quên theo dõi chúng mình để xem thêm các bài viết bổ ích khác nhé!

Cùng tham gia cộng đồng hỏi đáp về chủ đề VBA

Thảo luận 0 câu trả lời
Lượt xem 712 lượt xem
Vỗ tay vỗ tay

0 Bình 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