Daten von Workbook zu Workbook übertragen

Hallo VBA Spezialisten,

Ich übertrage Daten von ein Workbook in ein anderes Workbook.
Das funzt prima, es müssen aber beide Workbooks geöffnet sein.
Frage:
Geht das vielleicht auch wenn das Workbook „Bestand Rollenware _Einkauf“ nicht geöffnet ist?? Wahrscheinlich wohl nicht.
Wenns doch möglich ist, wie?
Mit bestem Dank im voraus für eventuelle Hilfe.
Gruß Skaletti!
Hier mein jetziges Makro:

Public Sub Kopieren()
 Workbooks("Bestand Rollenware\_Lager.xls").Sheets("Lager").Range("B2:G35").Copy
 Workbooks("Bestand Rollenware\_Einkauf.xls").Sheets("Einkauf").Range("B2").PasteSpecial xlPasteValues
 Workbooks("Bestand Rollenware\_Lager.xls").Sheets("Lager").Range("B37:G70").Copy
 Workbooks("Bestand Rollenware\_Einkauf.xls").Sheets("Einkauf").Range("B37").PasteSpecial xlPasteValues
 Workbooks("Bestand Rollenware\_Lager.xls").Sheets("Lager").Range("B72:G105").Copy
 Workbooks("Bestand Rollenware\_Einkauf.xls").Sheets("Einkauf").Range("B72").PasteSpecial xlPasteValues
 Workbooks("Bestand Rollenware\_Lager.xls").Sheets("Lager").Range("B107:G140").Copy
 Workbooks("Bestand Rollenware\_Einkauf.xls").Sheets("Einkauf").Range("B107").PasteSpecial xlPasteValues
 Application.CutCopyMode = False
End Sub

Ich übertrage Daten von ein Workbook in ein anderes Workbook.
Das funzt prima, es müssen aber beide Workbooks geöffnet sein.
Frage:
Geht das vielleicht auch wenn das Workbook „Bestand Rollenware
_Einkauf“ nicht geöffnet ist?? Wahrscheinlich wohl nicht.

Hallo Skaletti,

m.W. geht das nicht.
Umgekehrt ginge es, also einzelne Zellen aus der geschlossenen
„Bestand Rollenware_Einkauf.xls“ auszulesen mittels DDE-Kanal.

Du könntest in der „Bestand Rollenware_Einkauf.xls“ Zellverknüpfungen auf die andere Mappe reinschreiben.

Gruß
Reinhard

Hallo Reinhard,
Danke für die schnelle Antwort.
Scheind kompliziert zu sein.
Die Daten werden sich sehr häufig am Tag geändert und die
Datenmenge wird nicht gerade klein sein. Habe es jetzt so gemacht,
dass beim öffnen von „Bestand Rollenware_Einkauf.xls“ die Daten aus
„Bestand Rollenware_Lager.xls“ mit einem Buttonclick aktuallisiert werden können.
Da ich sehr neugierig bin:
Könntest du mir kurz erklären was ein DDE-Kanal ist, oder ist das
zu aufwendig??
Danke!

Gruß Skaletti!

Hallo Skaletti,

scheint kompliziert zu sein.

Nö, meines Wissens nach geht es nicht in eine geschlossene Mappe reinzuschreiben.
Auslesen einzelner Zellen einer geschlossenen Mappe geht.
Mit Excel4-Makros, die man auch über Einfügen–namen ohne Vba in Excel einsetzen kann.

Beispiel,
schreibe in A1 rein:
4*5+8

stelle dich in B1,gehe mal auf Einfügen–Namen, dort vergibst du den Namen „Ausw“ für
=Auswerten(A1)

Dann schreibe in B1 =Ausw

So benutzt man Excel4-makros in Excel.
Analog dazu kannst du mit einem anderen Befehl als Auswerten auch den Zellinhalt einer Zelle einer geschlossenen Mappe auslesen.
Den anderen Befehl weiß ich nicht auswendig, müßte ich recherchieren.

Habe es jetzt so gemacht,
dass beim öffnen von „Bestand Rollenware_Einkauf.xls“ die
Daten aus
„Bestand Rollenware_Lager.xls“ mit einem Buttonclick
aktuallisiert werden können.

wieso ist dafür ein Buttonklick nötig?

http://www.online-excel.de/excel/singsel_vba.php?f=82

Könntest du mir kurz erklären was ein DDE-Kanal ist, oder ist
das zu aufwendig??

Nö, nicht zu aufwendig, ich weiß so Kram aber nie :smile:)

Vielleicht kann dir Rainer in für Normalsterbliche verständlicher Form kurz erläutern was DDE ist, der Unterschied zu OLE usw.

http://de.wikipedia.org/wiki/Dynamic_Data_Exchange

Mir ist unklar warum du nicht einfach die mappe öffnest, zur Not minimiert, so daß du sie gar nicht siehst und dann per Code die daten aktualisierst und die mappe wieder schliesst.
Das geht doch bei den 6 Copy-Befehlen ratzfatz.

Gruß
Reinhard

Hallo Reinhard,

Nö, meines Wissens nach geht es nicht in eine geschlossene
Mappe reinzuschreiben.

Das wollte ich wissen.

Auslesen einzelner Zellen einer geschlossenen Mappe geht.
Mit Excel4-Makros, die man auch über Einfügen–namen ohne Vba
in Excel einsetzen kann.

Beispiel,
schreibe in A1 rein:
4*5+8

stelle dich in B1,gehe mal auf Einfügen–Namen, dort vergibst
du den Namen „Ausw“ für
=Auswerten(A1)

Dann schreibe in B1 =Ausw

So benutzt man Excel4-makros in Excel.

Werde ich mal testen, man lernt immer was dazu.

Mir ist unklar warum du nicht einfach die mappe öffnest, zur
Not minimiert, so daß du sie gar nicht siehst und dann per
Code die daten aktualisierst und die mappe wieder schliesst.
Das geht doch bei den 6 Copy-Befehlen ratzfatz.

Hier hast du natürlich recht. Eine Mappe kann nur der Lagerist
öffnen, die andere der Einkäufer. Deshalb meine Frage ob man in
eine geschlossene Mappe reinschreiben kann wenn der Einkäufer mal
nicht die Mappe geöffnet hat.

Vielen Dank für Deine Mühe.
Schönes Wochenende noch!

Gruß Skaletti!