Textdateien Importieren in Excel - erste Zeile weg lassen!
Hallo zusammen,
ich hab immer wiederkehrend mehrere Semikolongetrennte Textdateien, welche ich untereinander in Excel brauche!
Klappt hiermit schon ganz gut:
Danach wird noch bisl Text in Spalten und schön gemacht usw...
Allerdings hat jede Textdatei immer die selbe erste Zeile welche so aussieht:
AT-Nr.;MC 1;MC 2;Bezeichnung 1;Bezeichnung 2;Mengeneinheit;PGRP;Pool-AT-KZ;Sorti-Kz;AT-Nr. Bestand;AT-Nr.-Lieferant;Packinhalt 1;Packinhalt 2;AT-Nr. Verband;Metallgewicht;Metallstaffel;EAN-Nr;Sonst. Info;Sortimentsgruppe;Lief.Nr.Verband;RGI-AT;Bestandsbuchung E/S;EK-KGRP;Neuanlagedatum
Die ist immer gleich!
Wie kann ich das machen, das die nicht bei jeder Datei mit eingelesen wird? Also das eigentlich die Textdatei immer nur ab der zweiten Zeile eingelesen wird?? Geht das?
Vielen Dank schonmal ;)
ich hab immer wiederkehrend mehrere Semikolongetrennte Textdateien, welche ich untereinander in Excel brauche!
Klappt hiermit schon ganz gut:
Sub CSV_Import()
Dim dateien, i, lastrow
lastrow = 1
dateien = Application.GetOpenFilename _
("txt-Dateien (*.txt), *.txt", MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
Workbooks.Open dateien(i), local:=True
With ThisWorkbook.Sheets(1)
ActiveSheet.UsedRange.Copy Destination:=.Range("A" & lastrow)
lastrow = .UsedRange.Rows.Count + 1
End With
ActiveWorkbook.Close False
Next i
End If
End Sub
Dim dateien, i, lastrow
lastrow = 1
dateien = Application.GetOpenFilename _
("txt-Dateien (*.txt), *.txt", MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
Workbooks.Open dateien(i), local:=True
With ThisWorkbook.Sheets(1)
ActiveSheet.UsedRange.Copy Destination:=.Range("A" & lastrow)
lastrow = .UsedRange.Rows.Count + 1
End With
ActiveWorkbook.Close False
Next i
End If
End Sub
Danach wird noch bisl Text in Spalten und schön gemacht usw...
Allerdings hat jede Textdatei immer die selbe erste Zeile welche so aussieht:
AT-Nr.;MC 1;MC 2;Bezeichnung 1;Bezeichnung 2;Mengeneinheit;PGRP;Pool-AT-KZ;Sorti-Kz;AT-Nr. Bestand;AT-Nr.-Lieferant;Packinhalt 1;Packinhalt 2;AT-Nr. Verband;Metallgewicht;Metallstaffel;EAN-Nr;Sonst. Info;Sortimentsgruppe;Lief.Nr.Verband;RGI-AT;Bestandsbuchung E/S;EK-KGRP;Neuanlagedatum
Die ist immer gleich!
Wie kann ich das machen, das die nicht bei jeder Datei mit eingelesen wird? Also das eigentlich die Textdatei immer nur ab der zweiten Zeile eingelesen wird?? Geht das?
Vielen Dank schonmal ;)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 264527
Url: https://administrator.de/contentid/264527
Ausgedruckt am: 16.11.2024 um 13:11 Uhr
4 Kommentare
Neuester Kommentar
Moin,
kannst du dir hier abschauen ...
Gruß jodel32
kannst du dir hier abschauen ...
- Alle CSV-Dateien in einem Ordner mit einem VBA Makro einlesen Teil 2
- Excel Makro um CSV Dateien auszuwerten und gesammelt anzuzeigen.
Gruß jodel32
Wenn du es wesentlich Performanter haben willst nehm das aus dem zweiten Link. Dort muss dann nur Zeile 45 geändert werden.
Wenn du dein Script unbedingt weiterverwenden willst, reicht das Ändern von dieser Zeile:
Wenn du dein Script unbedingt weiterverwenden willst, reicht das Ändern von dieser Zeile:
ActiveSheet.UsedRange.Offset(1,0).Copy Destination:=.Range("A" & lastrow)