Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1320to1324
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Namen mit dem Wert #BEZUG! löschen

Namen mit dem Wert #BEZUG! löschen
11.07.2013 16:46:44
Hans
Guten Tag,
wenn ich mir die Liste der Namen anzeigen lasse, gibt es in meinem Fall einige deren Wert mit #BEZUG! angegeben sind. Wie kann ich diese per VBA erkennen und löschen?
Habe mir schin einige Eigenschaften der Namen anzeigen lassen, finde jedoch keine Eigenschaft die einen Fehler auslöst oder #BEZUG! enthält. Im Forum habe ich zwar einige Beiträge zu ähnlichen Themen gefunden, jedoch nicht konkretes.
Könnt ihr mir dabei helfen?
Vielen Dank
Gruß
Hans

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen mit dem Wert #BEZUG! löschen
11.07.2013 17:30:02
Beverly
Hi Hans,
Sub NamenLoeschen()
Dim namName As Name
For Each namName In ActiveWorkbook.Names
If InStr(namName.RefersTo, "#REF!") > 0 Then namName.Delete
Next namName
End Sub


AW: Namen mit dem Wert #BEZUG! löschen
11.07.2013 17:36:19
Markus
Hallo Hans,
weiß meinst du mit Liste von Namen.
Wenn sich die Liste zellbezogen aufbaut und du eine Änderung vorgenommen hast, wie z.B. eine Zeile gelöscht, kann es sein, dass er die entsprechende Zeile nicht mehr findet und dann erhälst du diesen fehler. Hier stellt sich die Frage, wie die Liste aufgebaut ist.
Definitiv ist der ursprüngliche Bezug nicht mehr vorhanden bzw. hat sich verschoben. Noch einmal genau nachschauen bzw. Datei hier hochladen.
Gruß Markus

Anzeige
AW: Namen mit dem Wert #BEZUG! löschen
12.07.2013 09:43:52
Hans
Hallo Markus,
vielen Dank für deine Antwort. Mit Liste der Namen meine ich die Liste die angezeigt wird wenn der "NamensManager" aus "Formeln" aufgerufen wird. Dort stehen in der zweiten Spalte der "Wert" der diesem Namen zugeordnet ist. Hier steht bei den Werten, bei denen keinen Wert verfügbar ist (weil z.B. die Tabelle aus der dieser Wert gezogen wird nicht mehr vorhanden ist), #BEZUG! drin. Diese Nemn will ich suchen und löschen.
Warum dort #BEZUG! drinnen steht, ist mir somit schon klar. Ich will die Verbindung auch nicht wieder herstellen, oder nach der Verbindung suchen. Einfach nur herausfinden gibt es zu diesem Namen keine Verbindung mehr, dann den Namen löschen.
Ich hoffe das Problem jetzt genauer geschildert zu haben und bedanke mich im Vorraus für eure Hilfe.
P.S. der Vorschlag der mir unterbreitet wurde hatte ich schon ausprobiert. In der Eigenschaft "RefersTo" wird mir nur angezeigt woraus der Wert ursprünglich gelesen wurde.
Gruß Hans

Anzeige
AW: Namen mit dem Wert #BEZUG! löschen
12.07.2013 10:15:14
Beverly
Hi Hans,
du hast meinen Code schon getestet?


AW: Namen mit dem Wert #BEZUG! löschen
12.07.2013 11:26:12
Hans
Hi Karin,
wie schon in der Antwort an Markus beschrieben, hatte ich den selben Code schon selbst ausprobiert. In RefersTo steht die Verbindung aus welcher Mappe der Wert ursprünglich gezogen wurde. z.B. 'C:\MyOrdner\[MeineExcelMappe.xls]'!$A$1. Damit kann ich nichts anfagen, da es ggf. weitere Namen geben kann die ebenfalls ihre Werte aus einer externen Mappe beziehen, die aber noch vorhanden sind. Ich muss feststellen können, ob der WERT ankommt oder nicht.
Gruß Hans

Anzeige
AW: Namen mit dem Wert #BEZUG! löschen
12.07.2013 12:27:28
Beverly
Hi Hans,
Zitat aus deinem Eröffnungsbeitrag:
wenn ich mir die Liste der Namen anzeigen lasse, gibt es in meinem Fall einige deren Wert mit #BEZUG! angegeben sind. Wie kann ich diese per VBA erkennen und löschen?
Und genau diese Namen, die #BEZUG! beinhalten, werden mit dem von mir geposteten Code gelöscht.
Deine jetzige Aufgabenstellung ist eine andere - es soll geprüft werden, ob die externe Arbeitsmappe noch vohanden ist:
Sub NamenLoeschen()
Dim namName As Name
For Each namName In ActiveWorkbook.Names
If IsError(Application.Evaluate(Mid(namName.RefersTo, 2))) Then namName.Delete
Next namName
End Sub


Anzeige
AW: Namen mit dem Wert #BEZUG! löschen
12.07.2013 13:52:11
Hans
Hallo Karin,
entschuldige das Missverständniss, den Code den du jetzt gepostet hast ist GENAU das was ich gesucht habe.
Vielen Dank für die Hilfe.
Schönes WE und Gruß
Hans

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige