Як видалити іменований діапазон за допомогою vba (з прикладом)
Ви можете використовувати такий синтаксис у VBA, щоб видалити іменовані діапазони з книги Excel:
Sub DeleteNamedRanges()
Dim NamedRange As Name
For Each NamedRange In ActiveWorkbook.Names
If NamedRange.Visible Then NamedRange.Delete
Next NamedRange
End Sub
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: видалення іменованих діапазонів у книзі Excel за допомогою VBA
Припустімо, що у нас є робоча книга Excel, яка містить такі три іменовані діапазони:
- Іменований діапазон під назвою sheet1_name у Sheet1
- Іменований діапазон під назвою sheet2_name у Sheet2
- Іменований діапазон під назвою sheet3_name у Sheet3
Щоб переглянути кожен із цих іменованих діапазонів, просто клацніть стрілку розкривного меню в полі Ім’я у верхньому лівому куті аркуша:
Припустімо, ми хочемо видалити кожен із цих іменованих діапазонів.
Для цього ми можемо створити такий макрос:
Sub DeleteNamedRanges()
Dim NamedRange As Name
For Each NamedRange In ActiveWorkbook.Names
If NamedRange.Visible Then NamedRange.Delete
Next NamedRange
End Sub
Після виконання цього макросу всі іменовані діапазони в усій книзі буде видалено.
Ми можемо переконатися, що їх видалено, знову клацнувши поле Ім’я у верхньому лівому куті одного з аркушів:
Ми бачимо, що поле Ім’я більше не містить назв іменованих діапазонів.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: як вставити лише значення без форматування
VBA: Як скопіювати видимі рядки на інший аркуш
VBA: копіювати рядки на інший аркуш на основі критеріїв