Löschen aller Namen bis auf wenige (Microsoft Excel)
Arbeiten Sie routinemäßig mit Arbeitsblättern, die Dutzende (oder Hunderte)
enthalten? von benannten Zellen, und die meisten dieser Namen sind unnötig? Das Bereinigen der Namen kann eine große Aufgabe sein, aber das Entfernen der nicht benötigten Namen kann Ihre Arbeitsmappe kleiner und effizienter machen. Das Problem ist, wie können Sie viele unnötige Namen auf einmal loswerden? Sie können sie sicherlich einzeln löschen, aber ein solcher Vorgang wird schnell mühsam. Sie können sie auch mit dem Namensmanager löschen (drücken Sie Strg + F3), dies kann jedoch auch sehr zeitaufwändig sein.
Eine mögliche Lösung besteht darin, einfach eine neue Arbeitsmappe zu erstellen und die Zellen aus der alten Arbeitsmappe in die neue zu kopieren. Markieren Sie die Zellen in der alten Arbeitsmappe, kopieren Sie sie mit Strg + C und fügen Sie sie dann in die Arbeitsblätter der neuen Arbeitsmappe ein. Dadurch wird fast alles aus der alten Arbeitsmappe kopiert – Formeln, Formatierungen usw. Es wird keine Kopie über Druckeinstellungen oder Bereichsnamen erstellt. Die einzige verbleibende Aufgabe besteht darin, die wenigen Namen, die Sie in der neuen Arbeitsmappe haben möchten, neu zu definieren.
Wenn Sie lieber mit der alten Arbeitsmappe (der mit allen Namen) arbeiten möchten, erstellen Sie am besten ein Makro, das das Löschen des Namens für Sie übernimmt. Sie benötigen ein Makro, mit dem Sie alle Namen außer denen löschen können, die Sie behalten möchten. Das Folgende ist ein einfacher Ansatz, der diese Aufgabe erfüllt:
Sub DeleteSomeNames() Dim vKeep Dim nm As Name Dim x As Integer Dim AWF As WorksheetFunction 'Add Names to keep here vKeep = Array("Name1", "Name2") Set AWF = Application.WorksheetFunction For Each nm In ActiveWorkbook.Names x = 0 On Error Resume Next x = AWF.Match(nm.Name, vKeep, 0) On Error GoTo 0 If x = 0 Then nm.Delete End If Next Set AWF = Nothing End Sub
Ändern Sie vor der Verwendung des Makros die Zeile, mit der das vKeep-Array erstellt wird.
Geben Sie einfach die Namen ein, die Sie im Array behalten möchten. Jeder Name ist von Anführungszeichen umgeben und durch Kommas getrennt. (In dem hier gezeigten Beispiel werden die Namen „Name1“ und „Name2“ beibehalten.) Das Makro durchläuft alle Namen in der Arbeitsmappe und verwendet die Match-Funktion, um festzustellen, ob der Name einer im Array ist. Ist dies nicht der Fall, wird es gelöscht.
Wenn Sie die Verwaltung der Namen in Ihrer Arbeitsmappe lieber mit einer Drittanbieterlösung verwalten möchten, ist das von Jan Karel Pieterse geschriebene Namensmanager-Add-In eine gute Wahl. Weitere Informationen zum Add-In finden Sie hier:
http://www.jkp-ads.com/officemarketplacenm-en.asp
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (11787) gilt für Microsoft Excel 2007, 2010, 2013 und 2016.
Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: