Hướng dẫn cách kiểm tra Name Range có tồn tại không bằng VBA Excel

Làm thế nào để biết được 1 Name có tồn tại không? Cách đơn giản là vào mục Name Manager trong thẻ Formulas. Nhưng có những Name Range không có trong Name Manager vẫn tồn tại. Làm sao để biết được những Name bị ẩn, hoặc làm sao không cần mở Name Manager vẫn có thể biết được file excel có sử dụng 1 Name Range theo yêu cầu hay không? Bạn sẽ tìm được câu trả lời khi đọc bài viết này của Học Excel Online.

Sử dụng VBA kiểm tra Name Range trong Excel

Chỉ cần sử dụng 1 câu lệnh đơn giản trong VBA như sau:

Sub KTra_NameRange()

‘Thiet lap cac bien

Dim wbBook As Workbook

Dim nName As Name

Set wbBook = ActiveWorkbook

‘Ghi cac name ra sheet de kiem tra

For Each nName In wbBook.Names

With nName

Sheet1.Range(“A” & 1 + nName.Index).Value = nName.Name

End With

Next nName

End Sub

Trong đoạn code trên chúng ta có:

  • Thiết lập các biến về Workbook – nơi sẽ kiểm tra Name Range
  • Thiết lập biến Name

Tại Workbook đang kích hoạt, chúng ta sẽ thực hiện 1 vòng lặp duyệt qua các Name có trong Workbook.

  • Mỗi Name xuất hiện sẽ ứng với 1 giá trị thứ tự tăng dần là nName.Index
  • Mỗi Name xuất hiện sẽ có tên tương ứng là nName.Name
  • Khi đó chúng ta gán Name vào sheet1, bắt đầu từ ô A2

Cách tạo Module và gắn Macro vào Module

Nếu bạn chưa biết cách chèn code vào module trong VBA, hãy xem lại bài viết này:

Hướng dẫn cách chèn code vào module trong VBA Excel

Tiếp theo, trong cửa sổ VBA, chúng ta tạo mới 1 module rồi copy đoạn code ở trên vào:

Khi chạy đoạn macro trên, chúng ta sẽ có kết quả là các name có trong workbook.

Một số ứng dụng

Có một vài gợi ý ứng dụng nội dung này trong công việc của bạn như sau:

  • Trong bài kiểm tra kỹ năng excel, bạn có thể kiểm tra xem người làm bài đã đặt tên vùng đúng theo yêu cầu chưa
  • Kiểm tra xem 1 tên mà bạn mong muốn đã xuất hiện chưa
  • Kiểm tra xem 1 tên được tạo ra trong vba, dù không xuất hiện trong Name Manager nhưng có tồn tại hay không
  • Kiểm tra xem file có tên rác, tên không mong muốn không (dựa trên số lượng name thu được, các name bị ẩn không nhìn thấy

Ngoài ra các bạn có thể tham khảo thêm các bài viết về VBA khác để nâng cao khả năng sử dụng VBA trong Excel như:

Hướng dẫn cách tạo Name và sử dụng Name trong VBA Excel

Tìm hiểu về ý nghĩa và cách dùng các sự kiện trong VBA Excel

Hướng dẫn cách đặt phím tắt hotkey cho macro trong Excel

Hướng dẫn cách tạo nút bấm chọn thư mục trong Excel bằng VBA


Tác giả: duongquan211287

· · ·

Khóa học mới xuất bản