Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1940to1944
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

Bereichnamen mit Formeln in andere Arbeitsmappe kopieren

Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
06.08.2023 13:59:01
Günther
Hallo VBA Profis,

muss mich hier nochmal melden, da der letzte Beitrag zu lange zurück lag.
Ich möchte alle Bereichsnamen (Namensmanager) aus einer Excel Datei in eine andere kopieren. Ein entsprechendes Makro habe ich bereits gefunden. Funktioniert mit Beispiel Dateien wunderbar. Nur bei meiner gehts nicht.

Als Anlage meine Datei
https://www.herber.de/bbs/user/162207.xlsm

Hier das Makro

Sub Names_copy()
''Es muss sicher gestellt werden, dass WbZiel geöffnet ist.
''Der Name der Zieldatei muss angepasst werden.
Dim WbZiel As Workbook
Dim n As Long
Dim Nc As Long
''ThisWorkbook ist die Mappe, in der der Code ausgeführt wird
''und in der sich die zu übetragenden Namen befinden.

''Die Anzahl der Namen in ThisWorkbook wird ermittelt.
Nc = ThisWorkbook.Names.Count
''Wenn die Anzahl der Namen größer 0 ist...
If Nc > 0 Then
''Objektvariable auf die Zielmappe setzen
Set WbZiel = Workbooks("bereichsnamen.xlsm")
''Schleife über Anzahl der Namen
For n = 1 To Nc
''Namen in der Zielmappe erzeugen
''Als Name des neu erzeugten Namen wird der selbe Name verwendet,
''wie der in ThisWorkbook.
''Als Referenz des neu erzeugten Namen wird die selbe Referenz
''verwendet, wie die in ThisWorkbook.
''Die Namen werden also nicht kopiert, sondern neu erzeugt und
''mit den selben Attributen ausgestattet, wie die Namen in der
''Quellmappe(ThisWorkbook).
WbZiel.Names.Add Name:=ThisWorkbook.Names(n).Name, RefersTo:=ThisWorkbook.Names(n).RefersTo
Next
End If
End Sub

Grüße
Günther

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
06.08.2023 14:20:31
GerdL
Hallo Günther,

Fehler ist Fehler.

''Quellmappe(ThisWorkbook).

If Not InStr(ThisWorkbook.Names(n).RefersTo, "#") Then
WbZiel.Names.Add Name:=ThisWorkbook.Names(n).Name, RefersTo:=ThisWorkbook.Names(n).RefersTo
End If
Next


Gruß Gerd
AW: Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
06.08.2023 14:47:15
Günther
Hallo Gerd,
leider funktioniert es noch nicht.
Schau mal in der Anlage, da habe ich beide Tests (gbu_herber.xlsm und das Original) getestet.

https://www.herber.de/bbs/user/162209.xlsx


Grüße
Günther
AW: Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
06.08.2023 18:13:54
Ulf
Hi Günther,
habe die Tabelle, die du gesendet hat inspiziert und dort sind Fehler in Bezügen in/ab Punkt 4.1 zu sehen, erklärbar nur, diese Datei die Namen aus einer Ursprungsdatei hatte, in der die Zellen verschoben oder gelöscht wurden. Wie schon oft hier zu lesen wäre es sinnvoller eine Vorlage samt eigener Bereiche mit Namen zu erstellen und verwenden, denn beziehen sich alle abhängigen Mappen auf deine Ursprungsmappe, müßtest du auch versionieren.
Korrekt sind solche Angaben:

Hier die Fehler, (vlt auch temporär eine Tabelle erstellt und gelöscht, o.ä.)

Wenn du das korrigierst, sollten die Makros laufen.
hth
Gruss
Ulf
Anzeige
AW: Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
07.08.2023 07:41:40
Günther
Hallo Ulf,
ja es hat funktioniert. Besten Dank. Puh ich bin erleichtert.

Gestatte mir noch eine Frage. Du hast geschrieben, dass diese Bereichsnamen in einer Vorlage (versioniert) auch bereitgestellt werden können/sollen. Wie geht das denn?

Grüße
Günther
AW: Bereichnamen mit Formeln in andere Arbeitsmappe kopieren
07.08.2023 09:27:33
Ulf
Hi Günther,
wenn du nach xltm oder xltx hier im Forum suchst:
https://www.herber.de/forum/archiv/1724to1728/1727386_Wie_per_VBA_xlsm_aus_einer_Vorlagendatei_xltm_erstellen_lassen.html
allgemeiner:
https://support.microsoft.com/de-de/office/erstellen-einer-vorlage-86a1d089-5ae2-4d53-9042-1191bce57deb
Wo ist der Vorteil? Macht sich bemerkbar, wenn man oft gleiche (kunden/objektbezogen) Dateien, basierend auf einer Datei zu verwenden hat.
Du erstellst eine Datei via Datei-Neu-NAME_DER_VORLAGE, in dieser sollten die Bezüge, alle intern sein, dh. keine kreuzverbundenen Dateien verwenden.
Beim späteren Öffnen wird KEIN Bezug auf andere Mappen genommen und somit kann die Ursprungsdatei den Bedürfnissen angepasst werden, ohne abhängige Dateien berücksichtigen zu müssen. Das Prinzip verwendet man analog für Word...
Der Aufwand ist relativ gering und erspart Ärger.
thx für Meldung
hth
Grüsse
Ulf
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige