Series Workshop Online - VBA in Excel 06/06/2026

Thực hành thiết lập tự động hóa các thao tác thủ công trong xử lý dữ liệu và lập báo cáo trong Excel

Cách dùng Excel VBA VLookup cho phạm vi được đặt tên

Microsoft Excel là một trong những công cụ được sử dụng rộng rãi trên thế giới. Excel cho phép người dùng viết mã và tạo macro để tự động hóa các thao tác. Và một trong những minh chứng đó là hàm VLOOKUP – hàm dùng để tìm kết quả dựa trên dữ liệu cụ thể trong tập dữ liệu lớn trong Excel VBA. Nhưng, bạn có biết rằng Excel VBA cho phép bạn người dùng sử dụng VLOOKUP cho các phạm vi được đặt tên không? Việc sử dụng các phạm vi được đặt tên giúp công thức dễ đọc và giảm lỗi trong Excel. Hãy cùng UniTrain tìm hiểu cách sử dụng hàm VBA VLookup với một phạm vi được đặt tên trong Excel nhé.

1. Hiển thị kết quả cho phạm vi được đặt tên trong MsgBox

Ví dụ, người dùng sử dụng VBA VLookup với một phạm vi được đặt tên và hiển thị kết quả bằng MsgBox. Cách này sẽ hữu ích nếu bạn đang tìm cách hiển thị kết quả sau khi tìm kiếm bằng hàm VBA VLookup trong Excel. Ở đây, người dùng sẽ sử dụng phạm vi được đặt tên được tạo trước đó (Employee_Data).

Cách thao tác:

Bước 1: Tạo Module > viết đoạn mã dưới đây > chọn biểu tượng Save.

Writing VBA Code

Đoạn mã:

Sub VLOOKUP_Single_Output()
Dim myRange As Range
Dim lookup_value As Variant
On Error GoTo errorMsg
Set myRange = Range("Employee_Data")
lookup_value = Range("B23")
MsgBox WorksheetFunction.VLookup(lookup_value, myRange, _
3, False), , "Employee Name"
Exit Sub
errorMsg:
MsgBox "Please use a valid Employee ID"
End Sub

Lúc này, đoạn mã sẵn sàng để Run. Trong Excel, có nhiều cách để chạy mã VBA. Bạn có thể tham khảo một số cách chạy mã dưới đây:

Chạy Macro bằng cách dùng tab Developer

Bước 1: Nhập Employee ID hợp lệ vào ô B23. Trong ví dụ này, người dùng đã sử dụng Employee ID 1100809. Sau đó, chọn Developer > Macros.

Selecting Macros Option

Bước 2: Khi hộp thoại Macro hiển thị, chọn tùy chọn VLOOKUP_Single_Output và chọn Run.

Choosing Macro to Rub Code

Sau đó, bạn sẽ có Employee Name tương ứng với Employee ID 1100809 được hiển thị trong MsgBox như hình dưới đây:

Showing Employee Name in a MsgBox

Ngược lại, hãy xem điều gì sẽ xảy ra nếu bạn nhập Employee ID sai. Giả sử, người dùng sử dụng Employee ID sai trong ô B23. Sau đó, chạy lại mã VBA.

Using Wrong Employee ID

Ngay lập tức, bạn sẽ nhận được một MsgBox có thông báo “Please use a Valid Employee ID” (như hình dưới).

Showing MsgBox for Invalid Employee ID

Làm thế nào mã này hiểu rằng đó là một Employee ID không chính xác? Bởi vì bất kỳ Employee ID nào không có sẵn trong cột đầu tiên trong phạm vi được chỉ định thì sẽ được xem là Employee ID không hợp lệ.

2. Giá trị VLookup từ phạm vi được đặt tên và input người sử dụng 

Trong ví dụ trước, người dùng đã nhập Employee ID trực tiếp và phải đảm bảo độ chính xác khi nhập ID. Tuy nhiên, ở ví dụ này, người dùng sẽ sử dụng một cách tốt hơn và hiệu quả hơn để chèn Employee ID.

Ngoài ra, người dùng sẽ chọn một ô và chèn Employee ID vào hộp thoại pop-up được hiển thị sau khi chạy mã.

Cách thao tác:

Bước 1: Tạo Module > nhập đoạn mã > chọn biểu tượng Save.

Writing and Saving VBA Code

Đoạn mã:

Sub VLOOKUP_Single_Output()
Dim myRange As Range
Dim lookup_value As Variant
On Error GoTo errorMsg
Set myRange = Range("Employee_Data")
lookup_value = Range("B23")
MsgBox WorksheetFunction.VLookup(lookup_value, myRange, _
3, False), , "Employee Name"
Exit Sub
errorMsg:
MsgBox "Please use a valid Employee ID"
End Sub

Bước 2: Để mở hộp thoại Macro, hãy sử dụng phím tắt ALT + F8. Trong hộp thoại Macro, chọn tùy chọn VLOOKUP_User_Input và chọn Run.

Running Macro

Hộp thoại Employee ID sẽ hiển thị, bạn không cần nhập Employee ID. Thay vào đó, chỉ cần chọn ô chứa Employee ID. Đây là một cách hiệu quả và giảm lỗi đáng kể trong Excel.

Bước 3: Trong hộp thoại Employee ID, chọn bất kì ô nào trong cột Employee ID > chọn OK.

Selecting Cell to Enter Employee ID

Sau đó, Employee Name đã chọn sẽ hiển thị trong MSgBox trên worksheet (như hình dưới):

Displaying MsgBox to Show Employee Name

Qua 2 ví dụ trên, UniTrain hy vọng bạn sẽ hiểu cách sử dụng Excel VBA VLookup cho phạm vi được đặt tên.

Xem thêm

Khóa học Ứng dụng VBA trong Excel

Cách dùng tính năng EVALUATE trong VBA Excel

Cách dùng tính năng FORECAST trong VBA Excel

[Free download] 100 Excel VBA Simulations

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

1 + 1 = ? (Nhập Haii để trả lời đúng)

Bài viết liên quan
Data Analysis Breakthrough Scholarship 2026

Với mong muốn tạo điều kiện cho các bạn trẻ tiếp cận kiến thức bài bản và phát triển tư duy phân tích dữ liệu thực tiễn, Data Analysis Breakthrough Scholarship 2026 chính

Xem thêm
Ưu đãi tháng 05/2026

Chương trình ưu đãi 05/2026 này mang đến ưu đãi kép cho học viên: Giảm ngay 155.000đ trên mức ưu đãi đóng sớm khi học viên đăng ký bất kỳ khóa học nào trong tháng này.

Xem thêm
So sánh ChatGPT vs Gemini vs Claude 2026: Nên chọn AI tool nào?

Ba cái tên ChatGPT, Gemini và Claude xuất hiện ở khắp nơi khi nói về AI, nhưng không cái nào là “tốt nhất tuyệt đối”. Mỗi tool có điểm mạnh khác

Xem thêm
Claude là gì? Tìm hiểu AI assistant của Anthropic và cách dùng 2026

Nếu bạn đã nghe tên ChatGPT nhưng chưa biết Claude là gì, bạn đang bỏ qua một trong những AI assistant mạnh nhất hiện nay, đặc biệt nếu công việc của

Xem thêm