Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Tabellenblätter in neue Arbeitsmappe kopieren

Tabellenblätter in neue Arbeitsmappe kopieren
10.09.2008 16:37:00
Christian
Hallo!
ich möchte gerne per makro aus einer datei mit ca. 70 tabellenblättern 11 Blätter auswählen und in eine neue Mappe kopieren, am besten sollten auch gleich noch die verküpfungen (in der neuen mappe) gelöscht werden.
Die zu kopierenden Blätter sind nicht hintereinander, also quer über die datei verteilt, allerdings ändert sich die position der blätter nicht, also könnte ich sie ja über "sheets(xx)" ansprechen!?!
Das makro sollte per schaltfläche gestartet werden, die schaltfläche soll in einem blatt, das nicht kopiert wird, eingefügt werden.
Habe lange gesucht aber leider nichts passendes gefunden... Hat jemand einen Vorschlag?
Vielen Dank im Voraus
mfg
Christian

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter in neue Arbeitsmappe kopieren
10.09.2008 17:01:32
Rudi
Hallo,
als Ansatz:

Sub tt()
Dim wks As Worksheet
Sheets(Array(1, 3, 5, 7, 9)).Copy
For Each wks In ActiveWorkbook.Worksheets
wks.UsedRange.Value = wks.UsedRange.Value
Next
End Sub


Gruß
Rudi

AW: Tabellenblätter in neue Arbeitsmappe kopieren
10.09.2008 17:14:00
Christian
Super Rudi, vielen dank, so hab ich mir das vorgestellt! Auch wenn ich den Code nicht wirklich nachvollziehen kann :)
Nun noch 2 "Kleinigkeiten":
1. ich würde gerne die reihenfolge der Blätter in der neuen mappe ändern - konkret: ich kopiere u.a. blatt 43, 55, 56. Blatt 43 soll hinter blatt 56 in der neuen mappe, leider reicht es nicht die position der zahlen im Array zu verändern... Geht das oder muss ich das in der neuen mappe manuell verschieben?
2. Die Blätter sind in der originaldatei mit anderen Blättern verknüpft, diese Verknüpfungen möchte ich in der neuen mappe (möglichst automatisch) entfernen (Menü Bearbeiten / Verknüpfungen / entfernen).
Wie geht das per Makro?
Nochmals Danke!
gruss
christian
Anzeige
AW: Tabellenblätter in neue Arbeitsmappe kopieren
10.09.2008 17:41:00
Rudi
Hallo,
die Verknüpfungen werden gelöscht, da alle Formeln in Werte umgewandelt werden.

Sub tt()
Dim wks As Worksheet
Sheets(Array(1, 3, 5, 7, 9)).Copy
sheets(1).move after:=sheets(3)
For Each wks In ActiveWorkbook.Worksheets
wks.UsedRange.Value = wks.UsedRange.Value
Next
End Sub


Gruß
Rudi

AW: Tabellenblätter in neue Arbeitsmappe kopieren
11.09.2008 08:56:00
Christian
Guten Morgen!
nochmals vielen Dank für den Lösungsvorschlag, aber leider funktioniert es nicht.. :(
ich bekomme folgende Fehlermeldung:
Userbild
Die neue Datei wird angelegt, die Blätter hineinkopiert, aber das ändern der Reihenfolge klappt nicht.
Eine ähnliche Meldung bekomme ich auch wenn ich die Blätter manuell kopiere, aber NICHT bei der ersten lösung ohne die geänderte Reihenfolge.
Das Problem auf das die Meldung hinweist stört mich nicht, wenn ich manuell kopiere sage ich einfach OK und alles ist so wie ich es wünsche, ich denke es liegt an den mehrzeiligen formeln, aber wie gesagt führt es zu keinen falschen daten...
Für weitere Tipps nochmal vielen Dank im Voraus
gruss
christian
Anzeige
AW: Tabellenblätter in neue Arbeitsmappe kopieren
11.09.2008 12:33:51
Christian
Hallo nochmal,
hat sich erledigt, war mein fehler...
in der zeile: sheets(1).move after:=sheets(3)
müssen in klammern die positionen der blätter in der neuen arbeitsmappe!
Jetz ist alles wie gewünscht, die Verknüpfungen bleiben zwar drin, aber die nervige nachfrage nach aktualisierung kommt nicht mehr, da ja die formeln durch werte ersetzt werden.
nochmals vielen dank!
gruss
christian

323 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige