VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Namen löschen ohne Formeln zu zerstören

Gruppe

Funktion

Bereich

Vba

Thema

Namen löschen ohne Formeln zu zerstören

Problem

Wie kann ich die in einem Tabellenblatt vergebenen Bereichsnamen löschen, ohne daß die Formeln mit den Zellbezügen zu diesen Namen eine Fehlermeldung aufweisen?

Lösung

Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.




StandardModule: basMain

Sub NamenLoeschen()
   Dim nme As Name
   Dim rng As Range
   Dim sNew As String
   For Each nme In ThisWorkbook.Names
      For Each rng In ActiveSheet.UsedRange.Cells
         If rng.HasFormula Then
            If InStr(rng.Formula, nme.Name) > 0 Then
               sNew = nme.RefersTo
               sNew = Right(sNew, Len(sNew) - 1)
               rng.Replace nme.Name, sNew
            End If
         End If
      Next rng
      nme.Delete
   Next nme
End Sub

    


Beiträge aus dem Excel-Forum zu den Themen Funktion und Vba