vor einigen Tagen hat mir ein User freundlicherweise ein Makro für mich gebastelt,
das Inhalte vieler Dateien in einer einzigen zusammenfasst.
https://www.herber.de/bbs/user/116611.xlsm
Da ich berufsbedingt teilweise nur selten in dieses Forum gucken kann und mein Anliegen schlecht vormuliert habe, wurde der Thread leider geschlossen, bevor das Makro 100% richtig läuft. Es ist sooo kurz davor, allerdings bekomm ich es selber nicht hin..
Kurz zum Makro:
Es durchsucht alle .csv Docs in meinem Beispielordner nach einem Suchwort,
kopiert dann die 1. Spalte und danach alle Spalten in denen das Suchwort gefunden wurde daneben. Anschließend wird das nächste Dokument durchsucht und die Spalten in denen das Suchwort gefunden wurde ebenfalls neben der zuletzt benutzten Spalte eingefügt, sodass die Spaltenanzahl immer größer wird, die Zeilenanzahl immer gleich bleibt.
Damit das Makro Sinn ergibt müssten die Daten nach der 1. Datei allerdings unter die vorher erstellte Tabelle kopiert werden, sodass die Spaltenanzahl immer gleich bleibt, während die Zeilen immer mehr werden.
Ich bin mir ziemlich sicher dass in dem Bereich
Set r = .Range(.Cells(1, 1), .Cells(1, .Columns.Count).End(xlToLeft))
Set f = r.Find(what:=bId, LookIn:=xlValues, lookat:=xlPart)
If Not f Is Nothing Then
.Range("A1:A" & .Cells(.Rows.Count, 1).End(xlUp).Row - 1).Copy _
WsZ.Cells(1, 1)
ff = f.Address
Do
.Range(.Cells(1, f.Column), _
.Cells(.Rows.Count, f.Column).End(xlUp).Offset(-1, 0)).Copy _
WsZ.Cells(1, WsZ.Columns.Count).End(xlToLeft).Offset(, 1)
Set f = r.FindNext(f)
lediglich f.column gegen f.row oder xltoleft gegen xldown (So etwas in der Art)
getauscht werden müsste, aber ich bin nach ewigem rumprobieren kläglich gescheitert..
Über eure Hilfe wäre ich wirklich dankbar!
Viele Grüße
Horst