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
Ứ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ỡ, 1/5 ư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. CÁC COMBO KHÓA HỌC ÁP DỤNG

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
Phân biệt WHERE và HAVING trong SQL

Trong SQL, lọc dữ liệu là một bước quan trọng giúp truy vấn trả về kết quả chính xác và tối ưu hơn. Hai mệnh đề thường được sử dụng để

Xem thêm