HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
365 privat
Erfahrungslevel des Fragestellers:
Basiskenntnisse in VBA
Christian
13.07.2026 14:49:48
AW: vorgegebenen Bereich aus mehreren Dateien in ein Blatt
Hallo Uwe,

habe es jetzt mal mit 10 Dateien getestet, sieht bis auf einen kleinen Schönheitsfehler super aus.
Kann man noch die Dateiendung aus den in der ersten Spalte ausgegebenen Dateinamen wegbekommen?
Ich versuche hier parallel auch selbst mal mein Glück.

Gruß und danke
Christian
Als Antwort auf diesen Beitrag
Alwin Weisangler
13.07.2026 10:12:23
AW: vorgegebenen Bereich aus mehreren Dateien in ein Blatt
Sorry,

da war noch ein Fehler drin;
Die Zeile Werte = .... liest ab B3 ein.

Richtig ist diese Zeile so:


Werte = List.FirstN(ColB_fixed, 52) in Werte),


kompletter korrigierter M-Code:


let
// Ordner einlesen
Quelle = Folder.Files("C:\DeinVerzeichnis"),
CSVs = Table.SelectRows(Quelle, each Text.Lower([Extension]) = ".csv"),
MitListe = Table.AddColumn(CSVs, "Liste", each let
Source = Csv.Document(File.Contents([Folder Path] & [Name]), [Delimiter = ";", Encoding = 65001, QuoteStyle = QuoteStyle.None]),
Promoted = Table.PromoteHeaders(Source, [PromoteAllScalars = true]),
ColNames = Table.ColumnNames(Promoted),
HasColB = List.Count(ColNames) >= 2,
ColB = if HasColB then Table.Column(Promoted, ColNames{1}) else List.Repeat({null}, 53),
ColB_fixed = if List.Count(ColB) < 53 then ColB & List.Repeat({null}, 53 - List.Count(ColB)) else ColB,
Werte = List.FirstN(ColB_fixed, 52) in Werte),
AlsTabelle = Table.TransformColumns(MitListe,{"Liste", each let SpaltenNamen = List.Transform({2..53}, each "B" & Text.From(_)) in Table.FromRows({ _ }, SpaltenNamen)}),
Expandiert = Table.ExpandTableColumn(AlsTabelle,"Liste", List.Transform({2..53}, each "B" & Text.From(_)),List.Transform({2..53}, each "B" & Text.From(_))),
MitDatei = Table.RenameColumns(Expandiert,{{"Name", "Name derDatei"}}),
Ergebnis =Table.SelectColumns(MitDatei,{"Name derDatei"} & List.Transform({2..53}, each "B" & Text.From(_)))
in
Ergebnis


Gruß Uwe
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.