Microsoft Excel

Herbers Excel/VBA-Archiv

Arbeitsblatt kopieren mit Namensbezügen

Betrifft: Arbeitsblatt kopieren mit Namensbezügen von: Patrik
Geschrieben am: 21.11.2007 16:57:46

Ich habe ein grosses Excel-Workbook mit Daten und Formeln. Die Formeln rund um die Daten werden weiter entwickelt, es kommen z.B. neue Auswertungen hinzu, Formelfehler werden korrigiert. Ich möchte nun per VBA einzelne Sheets mit Daten und Formeln in die neueste Vorlage kopieren. Dabei habe ich das Problem, dass die in den Formeln verwendeten Namensbezüge alle neu angelegt werden und auf das alte Blatt verweisen. Wie kopiere ich Inhalt und Formatierung so, dass die bestehenden Namensdefinition der Zielmappe verwendet werden? Das kopieren des ganzen Blattes hat nicht funktioniert:

Application.DisplayAlerts = False
' Löschen der Ganzen Sheets
wb_save.Worksheets("Daten_A").Delete
' Kopieren der Ganzen Sheets
wb_import.Worksheets("Daten_A").Copy After:=wb_save.Worksheets("Übersicht")
' schliessen
wb_import.Close SaveChanges:=False
wb_save.Close SaveChanges:=True
' Einschalten der Fehlermeldungen
Application.DisplayAlerts = True

Sollte ich besser nur die Inhalte (Formeln, Formatierungen, Werte) kopieren ohne löschen? Wie würde ich das machen?

  

Betrifft: AW: Arbeitsblatt kopieren mit Namensbezügen von: Renee
Geschrieben am: 21.11.2007 21:49:02

Hi Patrick,

Wenn Du die .DisplayAlerts nicht ausschaltest, solltest du m.E. eine Meldung bekommen, ob du die Namen der Zielmappe verwenden oder die der Quelle übernehmen willst. Wäre das nicht die einfachste Lösung ?

GreetZ Renee


  

Betrifft: AW: Arbeitsblatt kopieren mit Namensbezügen von: Patrik
Geschrieben am: 22.11.2007 13:14:39

Hi Renée
Ja, am einfachsten wäre es :-) Das Problem dabei ist, dass in den Blättern mehrere Hundert Namen definiert sind. Das manuelle Anklicken dieser Meldung will ich ja gerade vermeiden. Ich suche eine Möglichkeit, so zu kopieren, dass die erscheinende Meldung so beantwortet wird, dass der Name des Zielblattes übernommen wird. Lässt sich die Standardantwort (d.h die Antwort, welche mit DisplayAlerts gesetzt wird) für diese Meldung ändern?

Der Hintergrund ist der, dass diese Tätigkeit von vielen mit anderen Datenquellen ausgeführt werden muss, so dass ich einen hohen Automatisierungsgrad erreichen will.

Gruss Patrik


 

Beiträge aus den Excel-Beispielen zum Thema "Arbeitsblatt kopieren mit Namensbezügen"