Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1468to1472
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
Tabs kopieren per VBA
11.01.2016 16:08:12
Maxxlin
Hallo zusammen,
ich habe eine kurze Frage. Und zwar möchte ich per Makro folgenden Sachverhalt lösen:
Ich habe in einem Ordner mehrere xlsx-Dateien liegen, welche immer die gleiche Struktur (mehrere Tabs) haben. Nun möchte ich gerne jeweils ein bestimmtes Tab, dessen Name ich am besten per Input Box eingebe bzw. auswähle, aus allen in dem Ordner liegenden Dateien in die Datei mit dem Makro nach den bereits existierenden Tabs kopieren. Name des neuen Tabs soll jeweils immer der Name der originalen Datei sein.
Die Dateien, aus welchen kopiert werden soll, sollten wenn möglich ungeöffnet bleiben.
Wie bewerkstellige ich das?
Vielen Dank!

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

Betreff
Datum
Anwender
Anzeige
AW: Tabs kopieren per VBA
11.01.2016 17:23:26
Daniel
Hi
im Prinzip so (nur der grundlegende code ohne irgendwelche Prüfungen auf Fehler)
ohne die Datei zu öffnen wird's nicht gehen, aber das ist eigentlich kein Problem, wenn man sie schreibgeschützt öffnet.
Sub test()
Dim Datei As String
Dim Pfad As String
Dim Blatt As String
Dim wb As Workbook
Blatt = InputBox("Blattname")
If Blatt = "" Then Exit Sub
Pfad = "C:\...\...\zu durchsuchender Ordner\"
Datei = Dir(Pfad & "*.xlsx")
Do While Datei  ""
Set wb = Workbooks.Open(Pfad & Datei, ReadOnly:=True)
wb.Sheets(Blatt).Name = Left(wb.Name, Len(wb.Name) - 4)
wb.Sheets(Blatt).Copy after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
wb.Close False
Datei = Dir
Loop
End Sub
Gruss Daniel

Anzeige
AW: Tabs kopieren per VBA
11.01.2016 17:39:36
Maxxlin
Schon mal vielen Dank. Ich habe den Code in das Excel kopiert und den Pfad angepasst. Leider passiert nichts? Wo könnte der Fehler sein?
Danke!!

AW: Tabs kopieren per VBA
11.01.2016 17:57:18
Maxxlin
Ok. Es funktioniert. Allerdings zwei Probleme:
- es wird das Tab in das Ursprungsexcelfile kopiert. Ziel soll jedoch ein anderes Excel sein
- es kommt "Laufzeitfehler 9, Index außerhalb des gültigen Bereichs"
Danke für eine Rückmeldung!!

AW: Tabs kopieren per VBA
12.01.2016 11:46:26
Daniel
Hi
das erste ist kein Fehler, sondern dein expliziter Wunsch.
in deinem Ersten Beitrag hast du als Zieldatei, in welche die Blätter kopiert werden sollen angegeben:
"in die Datei mit dem Makro "
der Laufzeitfehler ist von mir, hab da übersehen, dass wenn ich das Blatt umbennene, es auch einen neuen Namen hat.
so sollte der Laufzeitfehler 9 nur noch kommen, wenn du den Blattnamen in einer der Dateien falsch geschrieben hast:
Sub Makro1()
Dim Datei As String
Dim Pfad As String
Dim Blatt As String
Dim wb As Workbook
Blatt = InputBox("Blattname")
If Blatt = "" Then Exit Sub
Pfad = "C:\Daten\Test\"
Datei = Dir(Pfad & "*.xlsx")
Do While Datei  ""
Set wb = Workbooks.Open(Pfad & Datei, ReadOnly:=True)
With wb.Sheets(Blatt)
.Name = Left(wb.Name, Len(wb.Name) - 5)
.Copy after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
End With
wb.Close False
Datei = Dir
Loop
End Sub
Gruss Daniel
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige