Hallo,
hier einfach nur das Trennzeichen ersetzt (ich habe eine Konstante dafür eingeführt, dann fällt die nächste Anpassung hoffentlich leichter):
Sub Import()
Dim SourcePath As String
Dim FFnr As Integer
Dim TxtZeile As String
Dim AnzZe As Long, AnzSp As Integer, i As Long
Dim sName As String
Const SEP As String = vbTab 'Trennzeichen
sName = "Speicherort" & Format(Date, "ddmmyyyy") & ".txt"
SourcePath = sName
FFnr = FreeFile
Open SourcePath For Input As #FFnr
Do While Not EOF(FFnr) 'Zeilenzahl feststellen
Line Input #FFnr, TxtZeile
AnzZe = AnzZe + 1
Loop
Close #FFnr
FFnr = FreeFile
Open SourcePath For Input As #FFnr
ReDim aZeilen(AnzZe)
Do While Not EOF(FFnr)
For i = 1 To AnzZe
Line Input #FFnr, TxtZeile
If i = 1 Then AnzSp = UBound(Split(TxtZeile, SEP)) + 1
Range(Cells(i, 1), Cells(i, AnzSp)) = Split(TxtZeile, SEP)
Next i
Loop
Close #FFnr
End Sub
Und hier habe ich (ohne es zu testen) die Zeilen rausgelöscht, die ich beim einfachen überfliegen als überflüssig einstufe:
Sub Import_kurz()
Dim SourcePath As String
Dim FFnr As Integer
Dim TxtZeile As String
Dim AnzSp As Integer, i As Long
Const SEP As String = vbTab 'Trennzeichen
SourcePath = "Speicherort" & Format(Date, "ddmmyyyy") & ".txt"
FFnr = FreeFile
Open SourcePath For Input As #FFnr
i = 1
Do While Not EOF(FFnr)
Line Input #FFnr, TxtZeile
AnzSp = UBound(Split(TxtZeile, SEP)) + 1
Range(Cells(i, 1), Cells(i, AnzSp)) = Split(TxtZeile, SEP)
i = i + 1
Loop
Close #FFnr
End Sub
Grüße, Ulrich
|