Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1276to1280
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

Neue Mappe für jedes Tabellenblatt

Neue Mappe für jedes Tabellenblatt
TobiasS
Hallo!
Ich habe eine Mappe mit X Tabellenblättern. Für je 2 aufeinanderfolgende Tabellenblätter soll nun eine Mappe erstellt werden, in die die Tabellenblätter kopiert werden.
bsp.:
Mappe1.Worksheet(1-2) in Mappe2
Mappe1.Worksheets(3-4) in Mappe3
usw.
es wäre wirklich super, wenn mir dabei jemand helfen könnte!
vielen Dank schonmal fürs durchlesen!
Tobi

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Neue Mappe für jedes Tabellenblatt
04.09.2012 11:45:16
Rudi
Hallo,
mal das Grundgerüst:
Sub aaa()
Dim i As Integer, wkb As Workbook
Set wkb = ActiveWorkbook
For i = 1 To wkb.Worksheets.Count - 1 Step 2
wkb.Worksheets(Array(i, i + 1)).Copy
Next
End Sub

Gruß
Rudi

AW: Neue Mappe für jedes Tabellenblatt
04.09.2012 12:15:27
Dirk
Hallo Tobi,
wichtig für den Programmierer währe hier zu wiesen "Wie sollen die neuen Mappen heißen?"
der Ansatz von Rudi ist gut. Ohne diese Information kann man nur nicht weiter machen.
Gruß
Dirk

AW: Neue Mappe für jedes Tabellenblatt
04.09.2012 12:53:40
TobiasS
Hallo Dirk!
Die Mappennamen sollen aus einer Spalte in einem worksheet in Mappe1 (name: infosheet) ausgelesen werden.
bsp.:
Mappe1.Worksheet(1-2) in Mappe2 = Name in Zelle (1,1)
Mappe1.Worksheets(3-4) in Mappe3 = Name in Zelle (1,2) usw.
Ich arbeite mich jetzt mal in den code von " fcs" hinein.
ich möchte mich an dieser stelle erstmal bei allen bedanken, echt super nett von euch!

Anzeige
AW: Neue Mappe für jedes Tabellenblatt
04.09.2012 12:31:15
fcs
Hallo Tobi,
der Basisansatz ist der gleiche wie bei Rudi.
Ich hab noch eine Prüfung auf gerade Blattzahl eingebaut und es wird auf Wunsch nach jedem Pärchen der Speichern-Unter-Dialog angezeigt.
Gruß
Franz
Sub CopySheetPaerchen()
'Jeweils 2 Tabellenblätter in neue Arbeitsmappe kopieren
Dim wbk_Aktiv As Workbook, wbk_Z As Workbook, bolLast As Boolean
Dim arrSheet(1 To 2) As Integer
Dim intI As Integer
Dim bolSaveas As Boolean
If MsgBox("Soll der Speichern-Unter-Dialog nach jedem Pärchen angezeigt werden?", _
vbQuestion + vbYesNo, _
"Tabellenblätter pärchenweise kopieren in Mappen") = vbYes Then bolSaveas = True
Set wbk_Aktiv = ActiveWorkbook
With wbk_Aktiv
bolLast = True
If .Sheets.Count Mod 2 = 1 Then
If MsgBox( _
"Anzahl Blätter in Arbeitsmappe ist ungerade, letztes Blatt als Einzelblatt kopieren?", _
vbYesNo + vbQuestion + vbDefaultButton2, _
"Tabellenblätter pärchenweise kopieren in Mappen") = vbNo Then
bolLast = False
End If
End If
For intI = 1 To .Sheets.Count Step 2
arrSheet(1) = intI
arrSheet(2) = intI + 1
If arrSheet(2) > .Sheets.Count Then
If bolLast = True Then
.Sheets(intI).Copy
End If
Else
.Sheets(arrSheet).Copy
End If
Set wbk_Z = ActiveWorkbook
If bolSaveas = True Then
Application.Dialogs(xlDialogSaveAs).Show IIf(InStr(1, .Name, ".xls") > 0, _
Left(.Name, InStrRev(.Name, ".xls") - 1), .Name) _
& " " & intI & IIf(intI + 1 

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige