VBA - Daten in andere Datei schreiben

...komplette Frage anzeigen

3 Antworten

Ganz einfaches Beispiel, muss aber bei Dir angepasst werden:

Sub Daten_Ohne_Makros()
    Windows("UrsprungsMappe").Activate
    Sheets("Tabelle2").Select
    Cells.Select
    Selection.Copy
    Windows("ZielMappe").Activate
    Sheets("Tabelle2").Select
    ActiveSheet.Paste
End Sub

Und so weiter mit allen Blättern ("Tabelle1, 2,3, .....n-1, n") der Mappe . Auf die Benamsung der Mappen und der Blätter achten!

Und beide Mappen müssen geöffnet sein.

Hätte Dir der Makro-Rekorder auch ähnlich aufgezeichnet!

Kann ich auch die Datei öffnen?

denn so müssen ja beide Tabellen geöffnet sein oder?

0

Da brauchst Du kein Makro dazu.

Öffne eine neue Datei, lege beide auf Halbbild so, dass Du die Tabellenfahnen (unten, die mit dem BlattNamen) sehen kannst. wähle Deine erste Datei aus, geh mit dem Mauszeiger auf die Blattfahne, drücke Strg und ziehe das Blatt mit gedrückter Strg-Taste in die neue Datei rüber. Wiederhole das für alle Blätter. Damit kopierst Du alle Blätter in die neue Datei, ohne Makros. Die verbleiben in der alten Datei.

Alternative: Speichere Deine Datei. füge ein neues Arbeitsblatt in Deine Datei ein. verschiebe gleichermaßen der Reihe nach alle Blätter minus1(das leere) in die neue Datei, diesmal ohne Strg. In der alten verbleibt das neu eingefügte leere Arbeitsblatt. Schließe die geleerte Datei OHNE SPEICHERN, sie bleibt Dir dann wie vorher mit allen Daten und Makros auf der Festplatte erhalten.

Die zweite Methode ist dann besser, wenn Du Bezüge zwischen den Blättern oder ganz externe Bezüge (also zu anderen Dateien) hast.

Bezüge VON externen Dateien beziehen sich DANN auf die neue, wenn diese Dateien gleichzeitig geöffnet sind (Symbolfensterchen reicht) und danach gespeichert werden, sie werden also mitgenommen.

Geschlossene Dateien reagieren logischerweise nicht.

0
@Iamiam

Ergänzug: Die neue Datei musst du natürlich mithilfe von speichern unter auch erst mal benennen und speichern. Ggf deshalb zuvor die Datei mit den Makros am Explorer umbenennen! (falls Du die neue unter gleichem Namen weiterführen willst.) Das ist die praktischere Methode, wenn Du das ganze natürlich machst, nur um Makros zu lernen, ok, dann hast Du ja Antworten.

0

Aber der Sinn von Makros ist ja sich die Arbeit zu erleichtern...

Die ganzen Worksheets händisch zu Kopieren ist mir viel zu umständlich ;-)

0
@Elgondor

Du hast von EINER Datei gesprochen. Auch wenn die 30 Blätter hat, ist es noch unökonomisch, dafür ein Makro zu schreiben! (und ich schreibe gerne Makros, aber irgendwie muss der Aufwand zum Nutzen im Verhältnis bleiben!).

0

Öffnen geht wie folgt:

   Workbooks.Open FileName:="D:\Meine_Daten\Tabellen\ZielMappe.xls"

Muss als erster Befehl stehen.

Ok, Dankeschön.

(Ich nehm ma an das ich das Workbook mit "Workbooks.close" wieder schließen kann oder?)

ist zwar eigtl. nicht ganz so schön mit dem Fenster hin und her gespringe. aber es tuts und ist schön Simpel.

0

Was möchtest Du wissen?