Header Ads

Giới thiệu về Hàm Application.InputBox trong VBA

Hàm Application.InputBox trong VBA cho phép hiển thị một hộp thoại để người dùng nhập dữ liệu. Hàm này có thể trả về nhiều loại dữ liệu khác nhau (số, văn bản, ô, phạm vi, v.v.) và cung cấp nhiều tùy chọn khác nhau thông qua các tham số.


Cú pháp đầy đủ của Application.InputBox:

Application.InputBox(Prompt, [Title], [Default], [Left], [Top], [HelpFile], [HelpContextID], [Type])

Giải thích các tham số:

  1. Prompt (Bắt buộc):

    • Chuỗi văn bản hiển thị trong hộp thoại, hướng dẫn người dùng nhập thông tin. Ví dụ: "Vui lòng nhập một giá trị:".
  2. Title (Tùy chọn):

    • Chuỗi tiêu đề của hộp thoại. Nếu bỏ qua, tiêu đề mặc định là "Microsoft Excel".
  3. Default (Tùy chọn):

    • Giá trị mặc định xuất hiện trong hộp thoại khi nó mở ra. Ví dụ: "1".
  4. Left (Tùy chọn):

    • Vị trí theo trục X (tọa độ trái) của hộp thoại trên màn hình, tính theo điểm ảnh (pixel).
  5. Top (Tùy chọn):

    • Vị trí theo trục Y (tọa độ trên) của hộp thoại trên màn hình, tính theo điểm ảnh.
  6. HelpFile (Tùy chọn):

    • Đường dẫn đến file trợ giúp (.chm) khi người dùng nhấn vào nút trợ giúp.
  7. HelpContextID (Tùy chọn):

    • ID của phần trợ giúp cụ thể trong file trợ giúp.
  8. Type (Tùy chọn):

    • Xác định loại dữ liệu mà người dùng có thể nhập. Đây là một tham số rất quan trọng, kiểm soát kiểu đầu vào.

Các giá trị Type và ý nghĩa của chúng:

  • 0: Trả về giá trị dưới dạng công thức (giống InputBox thông thường). Đây là kiểu mặc định.
  • 1: Trả về số (kiểu Double).
  • 2: Trả về chuỗi (String).
  • 4: Trả về một giá trị logic (Boolean). Người dùng có thể nhập "True" hoặc "False".
  • 8: Trả về tham chiếu ô (Range). Người dùng có thể chọn các ô trên bảng tính.
  • 16: Trả về lỗi (Error value).
  • 64: Trả về một mảng dữ liệu.

Ví dụ sử dụng:

  1. Yêu cầu người dùng nhập một số:

    Dim userInput As Double
    userInput = Application.InputBox("Nhập một số:", "InputBox Example", , , , , , 1)
    
  2. Yêu cầu người dùng chọn một ô hoặc phạm vi:

    Dim userRange As Range
    Set userRange = Application.InputBox("Chọn một ô hoặc phạm vi:", "Select Range", , , , , , 8)
    
  3. Nhận một chuỗi từ người dùng:

    Dim userText As String
    userText = Application.InputBox("Nhập một chuỗi:", "InputBox Example", , , , , , 2)
    
  4. Yêu cầu người dùng nhập giá trị boolean (True hoặc False):

    Dim userBoolean As Boolean
    userBoolean = Application.InputBox("Nhập True hoặc False:", "Boolean Example", , , , , , 4)
    

Nhờ tham số Type, bạn có thể kiểm soát loại dữ liệu người dùng có thể nhập vào, giúp tạo ra các hộp thoại tương tác hơn.

No comments

Powered by Blogger.