Cách xóa phạm vi được đặt tên bằng VBA Excel (có ví dụ)

Khi làm việc với tập dữ liệu khổng lồ và một mớ công thức phức tạp thì nhân sự nên đặt tên cho phạm vi trong Excel để giúp bạn gọi tên một phạm vi nhanh chóng hơn so với việc sử dụng tham chiếu. Tuy nhiên, trong một số trường hợp, bạn không cần dùng phạm vi được đặt tên nữa, thì phải làm thế nào? Bài viết này sẽ hướng dẫn bạn cách xóa phạm vi được đặt tên bằng VBA Excel qua 2 ví dụ cụ thể.

Giả sử có tập dữ liệu về Inventory List của Công nghệ ABC, gồm: Product ID ở cột B, Product Names ở cột C, Units Remaining ở cột D (như hình dưới).

Dataset to delete named range using VBA in Excel

Nếu nhấp vào mũi tên thả xuống trong Name Box, bạn sẽ thấy hai phạm vi được đặt tên có sẵn – là IDUnits (như hình dưới).

Two named ranges in the Name Box

Xóa tất cả các dãy đã đặt tên khỏi Workbook

Người dùng sẽ xóa tất cả các phạm vi đã đặt tên khỏi Workbook bằng cách sử dụng mã VBA. Nếu chọn các ô trong phạm vi B4: B14, bạn sẽ thấy ID  được hiển thị trong Name Box (như hình dưới). Thực tế, đó là tên của phạm vi ô này.

ID named range in Excel

Tương tự, phạm vi D4:D14 được đặt tên là Units.

Units named range in Excel

Để xóa các phạm vi được đặt tên khỏi Workbook, bạn cần thao tác:

Bước 1: Chọn Developer > Visual Basic trong nhóm Code.

visual basic on the developer tab

Bước 2: Khi cửa sổ Microsoft Visual Basic for Applications hiển thị, chọn Insert > Module.

inserting module in VBA editor in excel

Bước 3: Chèn mã.

Option Explicit
Sub delete_all()
Dim wb As Workbook
Dim named_range As Name
Set wb = ActiveWorkbook
For Each named_range In wb.Names
named_range.Delete
Next named_range
End Sub

VBA code to delete named range in Excel

Bước 4: Chọn biểu tượng Run hoặc nhấn F5 để chạy mã.

Executing code

Sau đó, bạn chọn lại phạm vi ô B4:B14 và sẽ thấy tên ID đã bị xóa.

named range deleted using VBA in Excel

Xóa phạm vi được đặt tên khỏi Worksheet cụ thể

Cách thao tác xóa phạm vi được đặt tên khỏi một Worksheet cụ thể cũng tương tự như xóa phạm vi khỏi toàn bộ Workbook ở phần 1. Hãy thực hiện các bước sau:

Bước 1: Chọn Developer > Visual Basic trong nhóm Code.

visual basic on the developer tab

Bước 2: Khi cửa sổ Microsoft Visual Basic for Applications hiển thị, chọn Insert > Module.

inserting module in VBA editor in excel

Bước 3: Chèn mã.

Sub delete_worksheet()
Dim named_range As Name
For Each named_range In ActiveWorkbook.Names
If named_range.RefersToRange.Parent.Name = "Sheet3" Then named_range.Delete
Next named_range
End Subv

VBA code to delete named range from specific sheet in excel

Bước 4: Chọn biểu tượng Run hoặc nhấn F5 để chạy mã. Sau đó, kết quả sẽ hiển thị như hình dưới:

Removing Named Range from Particular Worksheet in Excel

Xem thêm

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

Cách kiểm tra phạm vi tên bằng Excel 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
Focus Cell trong Excel – Tính năng giúp tăng khả năng điều hướng

Đã bao giờ bạn lạc trôi giữa hàng trăm dòng, hàng ngàn cột trên Excel… mà không biết mình đang ở đâu? Nếu “mất phương hướng” là cảm giác quen thuộc

Xem thêm
Trí tuệ nhân tạo AI là gì? Khái niệm, phân loại và vai trò trong cuộc sống

Trong thời đại cách mạng công nghiệp 4.0, trí tuệ nhân tạo AI đang trở thành một phần không thể thiếu trong nhiều lĩnh vực của cuộc sống. Từ các trợ

Xem thêm
Truy vấn lồng (Subquery) trong SQL – Bí kíp giúp xử lý và truy xuất dữ liệu với mức độ phức tạp cao

Truy vấn lồng (Subquery) là một trong những công cụ hiệu quả trong SQL, giúp xử lý và truy xuất dữ liệu với mức độ phức tạp cao hơn so với

Xem thêm
Hàm TRIMRANGE() – Hàm xóa giá trị trống “đỉnh” hơn cả TRIM.

Như bạn đã biết hàm TRIM() trong Excel giúp loại bỏ các ký tự trống (khoảng trắng). Tương tự vậy hàm TRIMRANGE() được sử dụng để xóa các giá trị trống khỏi một phạm vi

Xem thêm