Direkt zum Inhalt

Wie kombiniere ich mehrere Arbeitsmappen in einer Master-Arbeitsmappe in Excel?

Waren Sie jemals festgefahren, als Sie mehrere Arbeitsmappen in einer Master-Arbeitsmappe in Excel kombinieren mussten? Das Schrecklichste ist, dass die Arbeitsmappen, die Sie kombinieren müssen, mehrere Arbeitsblätter enthalten. Und wie kombiniere ich nur die angegebenen Arbeitsblätter mehrerer Arbeitsmappen zu einer Arbeitsmappe? Dieses Tutorial zeigt verschiedene nützliche Methoden, mit denen Sie das Problem Schritt für Schritt lösen können.


Kombinieren Sie mehrere Arbeitsmappen zu einer Arbeitsmappe mit der Funktion Verschieben oder Kopieren

Wenn nur einige Arbeitsmappen kombiniert werden müssen, können Sie mit dem Befehl Verschieben oder Kopieren Arbeitsblätter manuell von der ursprünglichen Arbeitsmappe in die Master-Arbeitsmappe verschieben oder kopieren.

1. Öffnen Sie die Arbeitsmappen, die Sie zu einer Master-Arbeitsmappe zusammenführen möchten.

2. Wählen Sie die Arbeitsblätter in der ursprünglichen Arbeitsmappe aus, die Sie verschieben oder in die Master-Arbeitsmappe kopieren möchten.

Anmerkungen:

1). Sie können mehrere nicht benachbarte Arbeitsblätter auswählen, indem Sie die Taste gedrückt halten Ctrl Taste und klicken Sie nacheinander auf die Blattregisterkarten.

2). Um mehrere benachbarte Arbeitsblätter auszuwählen, klicken Sie bitte auf die erste Blattregisterkarte und halten Sie die gedrückt Shift Klicken Sie auf die Registerkarte "Letztes Blatt", um alle auszuwählen.

3). Sie können mit der rechten Maustaste auf eine beliebige Blattregisterkarte klicken und auf klicken Wählen Sie Alle Tabellen aus Wählen Sie im Kontextmenü alle Arbeitsblätter in der Arbeitsmappe gleichzeitig aus.

3. Klicken Sie nach Auswahl der erforderlichen Arbeitsblätter mit der rechten Maustaste auf die Registerkarte Blatt, und klicken Sie dann auf Verschieben oder Kopieren aus dem Kontextmenü. Siehe Screenshot:

4. Dann die Verschieben oder Kopieren Das Dialogfeld wird im angezeigt Buchen Wählen Sie in der Dropdown-Liste die Master-Arbeitsmappe aus, in die Sie Arbeitsblätter verschieben oder kopieren möchten. Wählen Sie Verschieben, um im zu enden Vor dem Blatt Aktivieren Sie das Kontrollkästchen Erstellen Sie eine Kopie Kästchen und klicken Sie schließlich auf OK .

Dann können Sie Arbeitsblätter in zwei Arbeitsmappen sehen, die zu einer zusammengefasst sind. Bitte wiederholen Sie die obigen Schritte, um Arbeitsblätter aus anderen Arbeitsmappen in die Master-Arbeitsmappe zu verschieben.


Kombinieren Sie mehrere Arbeitsmappen oder bestimmte Arbeitsmappenblätter mit VBA zu einer Master-Arbeitsmappe

Wenn mehrere Arbeitsmappen zu einer zusammengeführt werden müssen, können Sie die folgenden VBA-Codes anwenden, um dies schnell zu erreichen. Bitte gehen Sie wie folgt vor.

1. Legen Sie alle Arbeitsmappen, die Sie kombinieren möchten, in einem Verzeichnis unter demselben Verzeichnis ab.

2. Starten Sie eine Excel-Datei (diese Arbeitsmappe ist die Hauptarbeitsmappe).

3. Drücken Sie die Taste Andere + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Anwendungen Fenster. In dem Microsoft Visual Basic für Anwendungen Klicken Sie im Fenster Insert > ModulKopieren Sie dann den folgenden VBA-Code in das Modulfenster.

VBA-Code 1: Führen Sie mehrere Excel-Arbeitsmappen zu einer zusammen

Sub GetSheets()
'Updated by Extendoffice 2019/2/20
Path = "C:\Users\dt\Desktop\dt kte\"
Filename = Dir(Path & "*.xlsx")
  Do While Filename <> ""
  Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
     For Each Sheet In ActiveWorkbook.Sheets
     Sheet.Copy After:=ThisWorkbook.Sheets(1)
  Next Sheet
     Workbooks(Filename).Close
     Filename = Dir()
  Loop
End Sub
	

Anmerkungen:

1. Der obige VBA-Code behält die Blattnamen der ursprünglichen Arbeitsmappen nach dem Zusammenführen bei.

2. Wenn Sie nach dem Zusammenführen unterscheiden möchten, welche Arbeitsblätter in der Master-Arbeitsmappe von wo stammen, wenden Sie den folgenden VBA-Code 2 an.

3. Wenn Sie nur bestimmte Arbeitsblätter der Arbeitsmappen zu einer Master-Arbeitsmappe kombinieren möchten, kann der folgende VBA-Code 3 hilfreich sein.

In VBA-CodesC: \ Benutzer \ DT168 \ Desktop \ KTE \”Ist der Ordnerpfad. Im VBA-Code 3 "Sheet1, Sheet3"sind die angegebenen Arbeitsblätter der Arbeitsmappen, die Sie zu einer Master-Arbeitsmappe kombinieren. Sie können sie je nach Bedarf ändern.

VBA-Code 2: Arbeitsmappen zu einer zusammenführen (jedes Arbeitsblatt wird mit dem Präfix seines ursprünglichen Dateinamens benannt):

Sub MergeWorkbooks()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
On Error Resume Next
xStrPath = "C:\Users\DT168\Desktop\KTE\"
xStrFName = Dir(xStrPath & "*.xlsx")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
Do While Len(xStrFName) > 0
    Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
    xStrAWBName = ActiveWorkbook.Name
    For Each xWS In ActiveWorkbook.Sheets
    xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.Count)
    Set xMWS = xTWB.Sheets(xTWB.Sheets.Count)
    xMWS.Name = xStrAWBName & "(" & xMWS.Name & ")"
    Next xWS
    Workbooks(xStrAWBName).Close
    xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

VBA-Code 3: Führen Sie bestimmte Arbeitsblätter von Arbeitsmappen zu einer Master-Arbeitsmappe zusammen:

Sub MergeSheets2()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
Dim xI As Integer
On Error Resume Next

xStrPath = " C:\Users\DT168\Desktop\KTE\"
xStrName = "Sheet1,Sheet3"

xArr = Split(xStrName, ",")

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
xStrFName = Dir(xStrPath & "*.xlsx")
Do While Len(xStrFName) > 0
Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
xStrAWBName = ActiveWorkbook.Name
For Each xWS In ActiveWorkbook.Sheets
For xI = 0 To UBound(xArr)
If xWS.Name = xArr(xI) Then
xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.count)
Set xMWS = xTWB.Sheets(xTWB.Sheets.count)
xMWS.Name = xStrAWBName & "(" & xArr(xI) & ")"
Exit For
End If
Next xI
Next xWS
Workbooks(xStrAWBName).Close
xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

4. Drücken Sie die Taste F5 Schlüssel zum Ausführen des Codes. Anschließend werden alle Arbeitsblätter oder angegebenen Arbeitsblätter der Arbeitsmappen in einem bestimmten Ordner gleichzeitig zu einer Master-Arbeitsmappe kombiniert.


Kombinieren Sie einfach mehrere Arbeitsmappen oder bestimmte Arbeitsmappenblätter zu einer Arbeitsmappe

Glücklicherweise Kombinieren Arbeitsmappen-Dienstprogramm von Kutools for Excel macht es viel einfacher, mehrere Arbeitsmappen zu einer zusammenzuführen. Lassen Sie uns sehen, wie diese Funktion beim Kombinieren mehrerer Arbeitsmappen funktioniert.

Vor der Bewerbung Kutools for Excel, Bitte Laden Sie es zuerst herunter und installieren Sie es.

1. Erstellen Sie eine neue Arbeitsmappe und klicken Sie auf Kutoolen Plus > Kombinieren. Anschließend wird ein Dialogfeld angezeigt, das Sie daran erinnert, dass alle kombinierten Arbeitsmappen gespeichert werden sollten und die Funktion nicht auf geschützte Arbeitsmappen angewendet werden kann. Klicken Sie auf OK .

2. In dem Arbeitsblätter kombinieren Assistent auswählen Kombinieren Sie mehrere Arbeitsblätter aus Arbeitsmappen zu einer Arbeitsmappe Option, und klicken Sie dann auf Weiter Taste. Siehe Screenshot:

3. In dem Arbeitsblätter kombinieren - Schritt 2 von 3 Klicken Sie im Dialogfeld auf die Schaltfläche Speichern > Reichen Sie das or Mappe Um die Excel-Dateien hinzuzufügen, werden Sie zu einer zusammengeführt. Klicken Sie nach dem Hinzufügen der Excel-Dateien auf Endziel Klicken Sie auf die Schaltfläche und wählen Sie einen Ordner aus, um die Master-Arbeitsmappe zu speichern. Siehe Screenshot:

Jetzt werden alle Arbeitsmappen zu einer zusammengeführt.

Im Vergleich zu den beiden oben genannten Methoden Kutools for Excel hat folgende Vorteile:

  • 1) Alle Arbeitsmappen und Arbeitsblätter werden im Dialogfeld aufgelistet.
  • 2) Deaktivieren Sie für die Arbeitsblätter, die Sie vom Zusammenführen ausschließen möchten, diese Option.
  • 3) Leere Arbeitsblätter werden automatisch ausgeschlossen.
  • 4) Der ursprüngliche Dateiname wird nach dem Zusammenführen als Präfix zum Blattnamen hinzugefügt.
  • Weitere Funktionen dieser Funktion finden Sie unter Bitte besuchen Sie hier.

  Wenn Sie eine kostenlose Testversion (30 Tage) dieses Dienstprogramms wünschen, Bitte klicken Sie, um es herunterzuladenund wenden Sie dann die Operation gemäß den obigen Schritten an.


Kutools für Excel - Hilft Ihnen, die Arbeit immer im Voraus zu beenden und mehr Zeit zu haben, um das Leben zu genießen
Haben Sie oft Probleme mit der Arbeit, Zeitmangel für sich und Ihre Familie?  Kutools for Excel kann Ihnen helfen, damit umzugehen 80% Übertreffen Sie Rätsel und verbessern Sie die Arbeitseffizienz um 80%, damit Sie mehr Zeit haben, sich um die Familie zu kümmern und das Leben zu genießen.
300 fortschrittliche Tools für 1500 Arbeitsszenarien machen Ihre Arbeit so viel einfacher als je zuvor.
Sie müssen sich keine Formeln und VBA-Codes mehr merken, sondern ruhen sich von nun an aus.
Komplizierte und wiederholte Vorgänge können in Sekunden einmalig verarbeitet werden.
Reduzieren Sie täglich Tausende von Tastatur- und Mausoperationen und verabschieden Sie sich jetzt von Berufskrankheiten.
Werden Sie in 3 Minuten ein Excel-Experte, helfen Sie Ihnen, schnell erkannt zu werden, und fördern Sie die Gehaltserhöhung.
110,000 hochwirksame Mitarbeiter und mehr als 300 weltbekannte Unternehmen.
Machen Sie Ihre $ 39.0 mehr wert als $ 4000.0 Training von anderen.
Kostenlose 30-Tage-Testversion mit vollem Funktionsumfang. 60-Tage-Geld-zurück-Garantie ohne Angabe von Gründen.

Comments (146)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have one workbook with 100+ sheets, I want to move all 100+ sheets into another workbook in a single sheet.
This comment was minimized by the moderator on the site
I had to read throught the comments to find suggestions that worked for my application of the VBA CODE 2, but I managed to get it to work doing the following things:
1. make sure to change "C:\Users\DT168\Desktop\KTE\" to your own directory to wherever you have your files are located. don't forget the extra "\" at the end!2. my spreadsheets were extension ".xls", so I deleted the extra "x" in this line, like so: xStrFName = Dir(xStrPath & "*.xlsx")3. I placed all my spreadsheets in a single folder, and only those files were the contents of that folder, the target macro enabled spreadsheet where this vba was running from was saved outside of this folder (hopefully this makes sense).
one thing that I didn't want to mess with though is I only needed to merge the 1st tab of each spreadsheet, but I didn't want to mess with the code so if each workbook you want to merge into one has multiple tabs, this code will grab all of the tabs on each workbook and place them in your target spreadsheet, I had to manually delete all the tabs I didn't want.
if the author of this vba could reply to me, how do you change the code to just copy the 1st tab as opposed to all the tabs?
thank you!
This comment was minimized by the moderator on the site
hi I want a change. If the the sheet name is same then the data should be appended in the same name sheet rather than adding a sheet. for example if i have 10 files with jan, feb, mar same sheetnames. then result should be 1 file having jan, feb, mar only 3 sheets with the data of all 10 files. thanks
This comment was minimized by the moderator on the site
Good morning,

Basically I have to copy the values of another file example c: \ test.xlsx (sheet name "date"):

I have to copy the values from A2: T20


And I have to paste in another Extract.xlsx file on the “Extracts” folder on A2.


PLEASE NOTE: You must run vba when opening the file.
This comment was minimized by the moderator on the site
Hello! I need to merge multiple files into one, that are password protected. All source files use the same password. What changes are needed to the first VBA script to merge the files without having to enter the password each time?
This comment was minimized by the moderator on the site
Hello any one can help me, I want to combine sheet 2 only from 5 different sheet, can you script for me.
This comment was minimized by the moderator on the site
you can use Array function to copy the multiple sheets to combine in one file
Sheets(Array("Sheet1","Sheet2")).copy
This comment was minimized by the moderator on the site
hai sir i want know code for copying multiple sheets in one excel to multiple excels
This comment was minimized by the moderator on the site
Sheets(Array("Sheet1","Sheet2")).copy
This comment was minimized by the moderator on the site
hai sir i want know code for copying multiple sheets in one excel to multiple excels
This comment was minimized by the moderator on the site
how to use VBA code 1 to amend and make it runs to combine all the .xlsx files into one excel file and each excel spreedsheet tab in the combined excel file should be named as original file name.thanks
This comment was minimized by the moderator on the site
What part of VBA code 3 specifies the name of the worksheet to be copied?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations