Cách kiểm tra phạm vi tên bằng Excel VBA

Thông thường, người dùng cần kiểm tra xem một phạm vi được đặt tên có tồn tại hay không để phục vụ cho việc phân tích kinh doanh. Nhìn chung, cách thao tác không khó nhưng đòi hỏi bạn phải có tính logic để biết cách sắp xếp mã VBA. Do đó, bài viết này sẽ giúp bạn kiểm tra phạm vi đã đặt tên bằng Excel VBA chỉ với 2 bước!

Bước 1: Chọn tập dữ liệu

Hãy cùng xem qua ví dụ tập dữ liệu về doanh số bán trái cây hàng tháng của một siêu thị. Tập dữ liệu có 4 cột có tiêu đề, gồm: Items và doanh số của January, February và March (như hình dưới).

Sample dataset of different items and sales

Cách thao tác:

1. Chọn Formulas trên thanh công cụ.

2. Chọn Name Manager.

Open name manager in excel

3. Hộp thoại Name Manager sẽ hiển thị. Bạn có thể thấy các phạm vi được đặt tên có sẵn trong sổ làm việc (như hình dưới).

Name manager dialog box

4. Chọn Close.

Bước 2: Chèn mã VBA để kiểm tra phạm vi được đặt tên 

Mã VBA sẽ giúp bạn kiểm tra xem một phạm vi được đặt tên có tồn tại trong Excel hay không bằng cách:

1. Giữ phím ALT + F11 trong Excel để mở Microsoft Visual Basic.

2. Chọn Insert > Module.

insert module in excel VBA

3. Một cửa sổ mới sẽ mở ra và viết macro VBA sau vào Module. Lưu ý là bạn phải chèn tất cả các phạm vi đã đặt tên mà bạn muốn kiểm tra.

Trong trường hợp này, người dùng chèn 6 tên phạm vi để kiểm tra trong tập dữ liệu (như hình dưới).

Sub VBA_Check_Named_Range()
Dim pckRng As Range
Dim kRangeName(6) As String
Dim bdOt As Long
Dim g As Integer
kRangeName(0) = "Apples"
kRangeName(1) = "Lemons"
kRangeName(2) = "Cherry"
kRangeName(3) = "Bananas"
kRangeName(4) = "Guava"
kRangeName(5) = "Litchi"
kRangeName(6) = "Grapes"
Application.ScreenUpdating = False
For g = 0 To 6
On Error Resume Next
bdOt = Len(ThisWorkbook.Names(kRangeName(g)).Name)
On Error GoTo 0
If bdOt <> 0 Then
Set pckRng = Range(kRangeName(g))
MsgBox "Provided Named Range: '" & kRangeName(g) & "' Found!", vbInformation, "ExcelDemy Publications"
bdOt = 0
Else
MsgBox "Provided Named Range: '" & kRangeName(g) & "' Can Not be Found!", vbInformation, "ExcelDemy Publications"
End If
Next g
Application.ScreenUpdating = True
End Sub

type VBA code in Module box to check if named range exists

4. Nhấn F5 để chạy mã.

the VBA macro code returns message box showing named ranges

Sau khi nhấn OK, kết quả sẽ hiển thị. Tuy nhiên, để biết một phạm vi được đặt tên có tồn tại hay không, bạn chỉ cần nhấn nút OK mỗi khi hộp thoại xuất hiện.

Hy vọng bài viết này sẽ giúp bạn hiểu được cách kiểm tra phạm vi được đặt tên có tồn tại trong tệp dữ liệu bằng Excel VBA. Để nâng cao khả năng viết code đơn giản, đọc hiểu code phức tạp, áp dụng tự động hóa vào công việc hàng ngày, hãy cân nhắc đến việc tham gia một khóa học VBA. Khóa học Ứng dụng VBA trong Excel tại UniTrain được thiết kế nội dung đào tạo mang tính ứng dụng cao, giúp học viên dễ dàng chuyển hóa kiến thức cơ bản nhất để ứng dụng trong hầu hết các tình huống thực tế.

Xem thêm

Khai giảng khóa học Ứng dụng VBA trong Excel

Bộ tài liệu “Làm chủ Excel và VBA” 

Cách ẩn thanh công thức bằng Excel VBA

Cách đánh giá chuỗi dưới dạng mã bằng Excel VBA

Để 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
Phím tắt Excel giúp tiết kiệm 90% thời gian nhập liệu

Trong quá trình xử lý dữ liệu bằng Excel, việc sử dụng các phím tắt không chỉ giúp tối ưu tốc độ làm việc mà còn tăng tính chính xác. Bài

Xem thêm
Ứng dụng hàm TEXTJOIN nâng cao trong Excel

1. Giới thiệu hàm TEXTJOIN và IF  Hàm TEXTJOIN trong Excel giúp nối các giá trị từ một phạm vi hoặc danh sách các ô, sử dụng dấu phân cách tùy

Xem thêm
30 tháng Tư rực rỡ, 01 tháng Năm ưu đãi bất ngờ

Mừng 50 năm thống nhất Đất nước, UniTrain ưu đãi đến 2.500.000 VNĐ trên học phí gốc cho học viên đăng ký các khóa combo. Hình thức online: 🔸Giảm 1.400.000đ trên học

Xem thêm
Nối các mảng dữ liệu trong Python

Trong quá trình xử lý dữ liệu với pandas, việc kết hợp nhiều bảng dữ liệu là thao tác rất phổ biến. Hàm concat() chính là công cụ mạnh mẽ giúp

Xem thêm