Jak usunąć nazwany zakres za pomocą vba (z przykładem)


Aby usunąć nazwane zakresy ze skoroszytu programu Excel, możesz użyć następującej składni w języku VBA:

 Sub DeleteNamedRanges()
 
Dim NamedRange As Name

For Each NamedRange In ActiveWorkbook.Names
    If NamedRange.Visible Then NamedRange.Delete
Next NamedRange

End Sub

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: usuwanie nazwanych zakresów w skoroszycie programu Excel przy użyciu języka VBA

Załóżmy, że mamy skoroszyt programu Excel zawierający następujące trzy nazwane zakresy:

  • Nazwany zakres o nazwie nazwa_arkusza1 w Arkuszu1
  • Nazwany zakres o nazwie nazwa_arkusza2 w Arkuszu2
  • Nazwany zakres o nazwie nazwa_arkusza3 w Arkusz3

Aby zobaczyć każdy z tych nazwanych zakresów, po prostu kliknij strzałkę rozwijaną w polu Nazwa w lewym górnym rogu arkusza:

Załóżmy, że chcemy usunąć każdy z tych nazwanych zakresów.

W tym celu możemy utworzyć następujące makro:

 Sub DeleteNamedRanges()
 
Dim NamedRange As Name

For Each NamedRange In ActiveWorkbook.Names
    If NamedRange.Visible Then NamedRange.Delete
Next NamedRange

End Sub

Po wykonaniu tego makra wszystkie nazwane zakresy w całym skoroszycie zostaną usunięte.

Czy zostały usunięte, możemy sprawdzić ponownie klikając pole Nazwa w lewym górnym rogu jednego z arkuszy:

Widzimy, że pole Nazwa nie zawiera już nazw nazwanych zakresów.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak wkleić same wartości bez formatowania
VBA: Jak skopiować widoczne linie na inny arkusz
VBA: skopiuj wiersze do innego arkusza na podstawie kryteriów

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *