Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1536to1540
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

Werte in andere Excel-Version kopieren

Werte in andere Excel-Version kopieren
31.01.2017 19:39:46
Barbara
Hallo
ich würde gerne bestimmte Zellen zum Beispiel A1, B5, B8, C5 und ein paar andere Zellen von einer Quelle-Tabelle (siehe Beispieldatei) in eine Zieltabelle kopieren.
Die dazwischenliegenden Zellen dürfen in der Zieltabelle NICHT überschrieben werden, daher ist ein händisches Copy-Paste eines ganzen Bereichs nicht möglich.
Alle Zellen außer die zu übertragenden sind gesperrt. Der Blattschutz in der hochgeladenen Beispieldatei hat kein Passwort.
Eine Schwierigkeit gibt es dazu:
Die beiden Tabellen laufen unter zwei unterschiedlichen Excel-Programmen und sind beide gleichzeitig offen. Das ist die Ausgangssituation.
Kann man aus der Quelldatei per VBA die Zieldatei irgendwie ansprechen?
Die zu übertragenden Zellen sind immer die selben, nur ihre Inhalte sind jeweils unterschiedlich. Daher denke ich an eine VBA-Lösung.
Plan B: Vielleicht geht die Übertragung auch irgendwie halbautomatisch mit der Windows-Zwischenablage? Habe dazu aber zu wenig VBA-Kenntnis.
https://www.herber.de/bbs/user/111044.xlsm
LG,
Barbara

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte in andere Excel-Version kopieren
01.02.2017 00:43:12
fcs
Hallo Barbara,
das Übertragen/Kopieren der Daten per Makro ist normal kein Problem. Hier muss man sich nur entscheiden - sollen die Zellen komplett kopiert werden oder nur die Werte/Zellinhalte.
In deinem Fall ist wahrscheinlich das Übertragen des Wertes der sinvollere Weg.
Workbooks("VersionA.xls").Sheets(1).Range("A1").Value = Workbooks("VersionB.xlsm").Sheets(1).Range("A1").Value
Eine Schwierigkeit gibt es dazu:
Die beiden Tabellen laufen unter zwei unterschiedlichen Excel-Programmen und sind beide gleichzeitig offen. Das ist die Ausgangssituation.

Diese Ausgagssituation versuche ich grundsätzlich zu vermeiden.
Warum müssen die Dateien unbedingt in 2 Excel-Instanzen/Versionen geöffnet sein?
Handelt es sich um eine Datei 2007 und neuer (xlsx oder xlsm) und beider anderen um eine Datei Version 2003 oder älter (xls), dann kann man beide Dateien in der neueren Excel-Version öffnen und die Daten übertragen.
Sind beide Dateien Version 2007 und neuer und die Namen identisch (Dateien in unterschiedlichen Verzeichnissen) dann sollte man die Dateien in einem Verzeichnis temporär umbenennen, bevor die Daten übertragen werden (Das wäre mein Plan "B") .
Kann man aus der Quelldatei per VBA die Zieldatei irgendwie ansprechen?
Innerhalb der gleichen Excelversion ist es kein Problem.
Wenn das Öffnen beider Dateien oder zumindest das der Zieldatei über das Makro gesteuert wird, dann ist die Dateizuordnung im Makro kein Problem.
Wenn immer nur 2 Dateien geöffnet sind, dann kann man auch nach der 2. geöffneten/sichtbaren Arbeitsmappe suchen.
Wie sieht es mit den Tabellenblättern aus? Sind die Namen immer identisch oder ist es in beiden Dateien immer das 1. Tabellenregister?
Deinen Plan "B" kannst du meines Wissens vergessen. Da kannst du gleich alles von Hand machen.
Wie viele Dateien musst du auf diese Weise bearbeiten?
Wenn die Dateinamen der Quelldateien eine eindeutige Zuordnung der Zieldateien erlauben, dann kann man alle Dateien eines Verzeichnisses in einer Schleife im Makro abarbeiten.
LG
Franz
Anzeige
AW: Werte in andere Excel-Version kopieren
01.02.2017 16:02:55
Barbara
Hi Franz,
danke für Deine ausführliche Antwort.
Diese zu vermeidende Ausgangssituation ist nun mal gegeben. Die Zieldatei wird von einer Web-Applikation geöffnet. Ich kann zwar in beide Dateien, eigene Quelldatei und externe Zieldatei, Makros hinein kopieren, aber die beiden verstehen einander nicht.
Der Befehl Application.Workbooks.count liefert 1, in beiden Dateien. Und jeweils den eigenen Namen der Datei. Sie kennen also einander nicht und können so nicht auf einander zugreifen.
Oder vielleicht anders?
Vielleicht doch mit Plan B? Ein Objekt in die Zwischenablage packen, dann in der anderen Datei das Objekt aus der Zwischenablage holen.
Sollte doch gehen, oder?
Anzeige
Gelöst. Danke
01.02.2017 22:52:46
Barbara
Habe eine Lösung gefunden:
Einfügemakro in Zieldatei kopieren
In Quelldatei mit VBA String mit Adressen und Inhalten erstellen, diesen in die Zwischenablage kopieren.
Zieldatei öffnen
Einfügemakro starte. String wird abgearbeitet und die Zellen eingefügt.
Danke Franz für Deine Hilfe.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige