Hallo, ich möchte gern in Excel Zellen festlegen in denen eine Textdatei importiert wird. (Die Textdatei ist eine ehemalige CSV-Datei).
Hier mal der Quellcode vom Einlesen der TXT
Zum Zeilentrennen
Dies funktioniert super, allerdings startet er den Textimport immer bei Zeile "A3" und ich möchte aber, dass er bei "A4" loslegt. Irgendjemand eine Idee, wie ich das einbringen kann. Den Code selbst habe ich aus dem Internet und weiß selbst nicht genau, wie alles funzt.
Gruß !n$t!nct
Hier mal der Quellcode vom Einlesen der TXT
Code:
Sub WriteInWks()
Dim cln As New Collection
Dim arrAct As Variant
Dim f As Integer, intRow As Integer, intCol As Integer
Dim txt As String
f = FreeFile
openFile = Application.GetOpenFileName("Microsoft Office Excel-Arbeitsmappe (*.xls), *.xls,Textdateien (*.txt),*.txt,Add-In-Dateien (*.xla),*.xla,CSV-Dateien (*.csv),*.csv,Alle Dateien (*.*), *.*")
If openFile = "Falsch" Then Exit Sub
Open openFile For Input As f
Do Until EOF(f)
Line Input #f, txt
arrAct = SplitString(txt, ",")
intRow = intRow + 1 ' Hier wird die zeile definiert
For intCol = 1 To UBound(arrAct)
Cells(intRow, intCol).Value = arrAct(intCol)
Next intCol
Loop
Close f
Rows(1).Font.Bold = True
End Sub
Zum Zeilentrennen
Code:
Function SplitString(ByVal txt As String, strSeparator As String)
Dim arr() As String
Dim intCounter As Integer
Do
intCounter = intCounter + 1
ReDim Preserve arr(1 To intCounter)
If InStr(txt, strSeparator) Then
arr(intCounter) = Left(txt, InStr(txt, strSeparator) - 1)
txt = Right(txt, Len(txt) - InStr(txt, strSeparator))
Else
arr(intCounter) = txt
Exit Do
End If
Loop
SplitString = arr
End Function
Dies funktioniert super, allerdings startet er den Textimport immer bei Zeile "A3" und ich möchte aber, dass er bei "A4" loslegt. Irgendjemand eine Idee, wie ich das einbringen kann. Den Code selbst habe ich aus dem Internet und weiß selbst nicht genau, wie alles funzt.
Gruß !n$t!nct
Zuletzt bearbeitet: