Anzeige
Archiv - Navigation
1732to1736
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

VBA Mehrere Arbeitsblätter zu einem Zusammenführen

VBA Mehrere Arbeitsblätter zu einem Zusammenführen
20.01.2020 20:56:31
Chris
Hallo Zusammen, ich bräuchte etwas hilfe. Ich komme leider nicht weiter. Ich möchte gerne _ mehrere Arbeitsblätter aus verschiedensten Unterordern zu einem Arbeitsblatt zusammen führen. Die Dateien bekomme ich alle geöffnet, es kopiert mir aber immer den Arbeitsblatt-Inhalt aller Datein in A1 des aktuellen Arbeitsblattes, es soll aber immer am Ende des jeweiligen Datensatzes angehängt werden. zB 1 Blatt auf A1 und 2 Blatt dann ans Ende zB A3.

Sub Vereinigung()
Call ListFilesInFolder("c:\Irgendwas")
End Sub


Sub ListFilesInFolder(SourceFolderName As String)
Dim SourceFolder As Object, SubFolder As Object, nextsheet
Dim Datei$, Pfad$, DateiMatch$
Dim AnfZelle As Range, Wb As Workbook, datensatz As Worksheet, lo As ListObject, mainLO As _
_
ListObject, col As ListRow
Dim counter As Integer
On Error Resume Next
Set SourceFolder = CreateObject("Scripting.FileSystemObject").GetFolder(SourceFolderName)
Set datensatz = Worksheets("Datensatz") 'welches Arbeitsblatt sollen die Daten _
zwischengespeichert werden
Set ergebnis = Worksheets("Ergebnis") 'welches Arbeitsblatt für die Erstellung der Liste
datensatz.Cells.ClearContents 'Zellen im Arbteitsblatt leeren
Dateiname$ = "datenpool.xls" 'Dateinamen
nextsheet = Dir(SourceFolder.Path & "\" & Dateiname$)
counter = 1
Set AnfZelle = datensatz.Range("A" & counter) ' _
aktiven Arb.Mappe
Do While nextsheet ""
Workbooks.Open SourceFolder.Path & "\" & nextsheet
ActiveWorkbook.Worksheets("Sheet1").Range("A1:A6").Copy Destination:=AnfZelle
ActiveWorkbook.Close SaveChanges:=False
nextsheet = Dir()
counter = counter + 1
Loop
For Each SubFolder In SourceFolder.SubFolders
ListFilesInFolder SubFolder.Path
Next SubFolder
Set SourceFolder = Nothing
Set SubFolder = Nothing
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Mehrere Arbeitsblätter zu einem Zusammenführen
20.01.2020 21:11:55
ChrisL
Hi Chris
Freihand... (set anfzelle muss in den Loop mit rein)
    counter = 1
Set AnfZelle = datensatz.Range("A" & counter) ' ""
Workbooks.Open SourceFolder.Path & "\" & nextsheet
ActiveWorkbook.Worksheets("Sheet1").Range("A1:A6").Copy Destination:=AnfZelle
ActiveWorkbook.Close SaveChanges:=False
nextsheet = Dir()
counter = counter + 1
Loop
    counter = 1
Do While nextsheet  ""
Set AnfZelle = datensatz.Range("A" & counter) '
cu
Chris
Anzeige

178 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige