Clever-Excel-Forum

Normale Version: Excel VBA - Trennzeichen bei txt import
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich habe eine kleine Frage zu Excel VBA. Folgenden Code habe ich aktuell:

Code:
Sub A()
   With Application.FileDialog(msoFileDialogOpen)
      If .Show Then Sheets.Add , Sheets(Sheets.Count), , .SelectedItems(1)
    End With
End Sub

Sub B()
With Application.FileDialog(msoFileDialogFilePicker)
    .AllowMultiSelect = True
    .InitialFileName = "C:\Users\Thoma\Desktop\Test\*.txt"
    If .Show Then
        For Each f In .SelectedItems
            Sheets.Add , Sheets(Sheets.Count), , f
        Next f
    End If
End With
End Sub

Der Code öffnet den Windows Explorer, sucht Textdateien im festgelegten Ordnerpfad und lädt diese anschließend in Excel. Leider importiert der Code alle Daten in die Spalte A. Die Daten haben jedoch ein Trennzeichen (Komma) und sollen an dieser Stelle aufgeteilt werden. Es sollen die Spalten A-J gefüllt werden. Leider weiß ich nicht wie das geht und hoffe es hat jemand eine Lösung für mich parat.

Anbei sende ich auch noch einige Beispieldaten.

Ich bedanke mich für eure Hilfe und wünsche euch noch schöne Ostern!

Grüße,
Thomas
Markiere den bereich, wähle unter dem Reiter "Daten" "Text in Spalten" ,getrennt durch trennzeichen dann Komma anhaken und fertigstellen drücken.
Hallo Thomas,

ich habe den Import einmal mit dem Makrorekorder ausgezeichnet und da ist folgender Code herausgekommen:

Code:
Sub Makro1()
    Workbooks.OpenText Filename:="C:\Users\Thoma\Desktop\Test\amd.us.txt", Origin:=xlMSDOS, _
        StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, Comma:=True _
        , TrailingMinusNumbers:=True
End Sub

Den Codeteil ab "Filename:" müsstest die möglicherweise in deinen Code bei ".Initalfilename = " einfügen und austesten.
Danke für den Code! Dieser funktioniert schon mal ganz gut.

Leider weis ich nicht genau, an welcher Stelle ich diesen einsetzen soll. Außerdem ist dieser ja so geschrieben, dass nur eine bestimmte Datei geöffnet wird oder?