Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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 auslesen und ändern

Namen auslesen und ändern
10.06.2016 11:28:24
PeterO
Hallo!
Ich habe eine Tabelle mit unzähligen definierten Namen, die auf andere Exceldateien verweisen. Hier muss ich nun den Pfad ändern. Händisch ist das eine Tagesaufgabe ;-)
Beispiel:
definierter Name: Bereich1
bezieht sich auf: ='O:\EV\[Dateiname_XYZ.xls]AZ'!$B$30
NEU
bezieht sich auf: ='L:\XYZ\ABC\[Dateiname_XYZ.xls]AZ'!$B$30
Kann mir jemand eine VBA-Lösung zur Verfügung stellen?
Gruß Peter

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen auslesen und ändern
10.06.2016 11:30:14
PeterO
ERGÄNZUNG
Die Namen wurden natürlich alle über das Manü definiert und nicht per VBA...

AW: Namen auslesen und ändern
10.06.2016 11:39:07
Fennek
Hallo,
wie wäre es mit einem Versuch mit "suchen / ersetzen", Option "in Formeln.
Also per Menü O:\EV in L:\xyz\abc zu ersetzen.
Wenn das funktioniert, dann den Makro-Rekorder mitlaufen lassen, auf Eindeutigkeit prüfen und dann den vba-Code schreiben.
mfg

AW: Namen auslesen und ändern
10.06.2016 11:43:51
PeterO
Hallo Fennek,
da die Suchen und Ersetzen Funktion nur in Spalten/Zellen sucht funktioniert das leider nicht.
Gruß Peter

AW: Namen auslesen und ändern
10.06.2016 12:15:59
Fennek
Hi,
in einem Mini-Test hat es funktioniert.
(Nicht erschrecken über die xl-Version)
Userbild

Anzeige
AW: Namen auslesen und ändern
10.06.2016 12:27:15
PeterO
Da habe ich mich wohl nicht korrekt ausgedrückt! Die Namen sind so definiert:
Userbild

AW: Namen auslesen und ändern
10.06.2016 13:07:00
Michael
Hallo Peter!
Schematisch, teste mal:
Sub NamenTausch()
Const S_PFAD_ALT As String = "'O:\EV\[Dateiname_XYZ.xls]AZ'"
Const S_PFAD_NEU As String = "'L:\XYZ\ABC\[Dateiname_XYZ.xls]AZ'"
Dim Wb As Workbook
Dim Nme As Name
Set Wb = ThisWorkbook
With Wb
For Each Nme In .Names
With Nme
If InStr(1, Nme.RefersToLocal, S_PFAD_ALT, vbTextCompare) > 0 Then
.RefersToLocal = Replace(.RefersToLocal, S_PFAD_ALT, S_PFAD_NEU)
End If
End With
Next
End With
End Sub
LG
Michael

Anzeige
Danke, so funktioniert es! owT
10.06.2016 13:23:05
PeterO

AW: Namen auslesen und ändern
10.06.2016 12:40:56
Rudi
Hall,
mach das doch über den Verknüpfungsmanager.
Gruß
Rudi

AW: Namen auslesen und ändern
10.06.2016 13:06:47
PeterO
Hallo Rudi,
ich finde keinen Verknüpfungsmanager bei mir. Sofern das ein externerns AddOn ist, darf ich es nicht mal installieren.
Ich hatte mir so was vorgestellt:
for each .Name in Workbook
replace ("O:\EV";"L:\XYZ\ABC")
next
Nur leider kann ich das nicht umsetzen.

Siehe meine AW oben, owT
10.06.2016 13:07:30
Michael

AW: Namen auslesen und ändern
10.06.2016 13:35:23
Rudi
Hallo,
Sofern das ein externerns AddOn ist
Ist er nicht.
Bearbeiten - Verknüpfungen, wenn ich mich nicht irre.
Gruß
Rudi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige