Як видалити іменований діапазон за допомогою 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: копіювати рядки на інший аркуш на основі критеріїв

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *