Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1736to1740
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

Excelfiles jeweil 1. spalte zu einem File zusammenführen

Excelfiles jeweil 1. spalte zu einem File zusammenführen
11.02.2020 16:43:00
Valentin
Hallo Zusammen,
Ich suche nach einer Lösung, in VBA, mit aus allen Excelfiles aus einem Verzeichnis die Spalte a zusammenführen kann in eine Gesammelte Excel, in ein Blatt, sodass alle je Datei eine Spalte a-xx befüllt wird.
Die Dateien befinden sich alle in einem Verzeichnis C:\test\U09004708_ALL und sind je nach Land allLanguages_PLK_XXX.xlsx benannt. Es sind 17 Excelfiles
Mein bescheidener Versuch war wie folgt:
For i = 1 To 17 Step 1
Workbooks.Open Filename:="C:\test\U09004708_ALL\*.xlsx"
Workbooks(Workbooks.Count).Worksheets("Lastkollektive").Range("A:A").Copy
Workbooks(1).Worksheets(1).Cells(1, i).Paste
Workbooks(Workbooks.Count).Close SaveChanges:=False
Next
Aktuell erhalte ich einen 1004 Laufzeitfehler, welcher sagt, dass die Datei nicht gefunden wird. Jedoch habe ich den Pfad kopiert.
Leider kenne ich mich in VBA nicht gut aus und weiß z.B. nich twas Worksheets "Lastkollektive" ist

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excelfiles jeweil 1. spalte zu einem File zusammenführen
11.02.2020 19:34:43
fcs
Hallo Valentin,
so sollte das Kopieren funktionieren.
Für die zusammengeführten Spalten wird eine neue Arbeitsmappe erstellt.
LG
Franz
Sub Copy_Spalte_A_aus_Dateien()
Dim strDatei As String
Dim strPfad As String
Dim lngSpalte As Long
Dim wksZiel As Worksheet
Dim wkbZiel As Workbook
Dim wksQuelle As Worksheet
Dim wkbQuelle As Workbook
Application.ScreenUpdating = False
'neue Mappe mit 1 Tabelenblatt anlegen
Set wkbZiel = Application.Workbooks.Add(Template:=xlWBATWorksheet)
Set wksZiel = wkbZiel.Worksheets(1)
'Verzeichnis mit den Quelldateien
strPfad = "C:\test\U09004708_ALL\"
'Exceldateien im Verzeichnis suchen
strDatei = Dir(strPfad & "*.xlsx")
lngSpalte = 0
'gefundene Dateien abarbeiten
Do Until strDatei = ""
'Datei schreibgeschützt öffnen
Set wkbQuelle = Application.Workbooks.Open(Filename:=strPfad & strDatei, _
ReadOnly:=True)
Set wksQuelle = wkbQuelle.Worksheets(1)
'Zielspalte hochzählen
lngSpalte = lngSpalte + 1
'Daten kopieren aus Spalte A
With wksQuelle
.Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)).Copy _
wksZiel.Cells(1, lngSpalte)
End With
'Quelldatei wieder schliessen ohne speichern
wkbQuelle.Close savechanges:=False
'nächste Datei suchen
strDatei = Dir
Loop
Application.ScreenUpdating = True
'Spaltenbreite optimieren
wksZiel.Columns.AutoFit
MsgBox "Fertig"
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige