wie kann man aus einer Textdatei Zeile n auslesen?
Danke,
Michael
wie kann man aus einer Textdatei Zeile n auslesen?
Danke,
Michael
wie meinst Du das? Was für eine Art Datei (.DOC, .TXT???)
Aus einfachen Textdateien geht es rel. einfach. Wenn man das öfters benötigt, sollte man mittels Basic ein kleines Programm schreiben, das die gewünschten Zeilen ausliest und ausgibt.
Ansonsten weiß ich nicht genau, was Du meinst.
Gruß,
Axel.
ich meine eine *.txt Datei.
Wie kann man also aus einer *.txt Datei Zeile z.B. 23 auslesen?
Genaugenommen will ich folgendes:
Ich will die Zeilen aus einer *txt Datei auslesen, die zwischen 2 Zeilen mit bestimmten Schlüsselwörtern stehen.
- - - t x t - - -
Zeile 1 hallo
Zeile 2 wer
Zeile 3 beantwortet
Zeile 4 mir
Zeile 5 diese
Zeile 6 Frage
- - -
Schlüsselwort für den Beginn sei "wer", für das Ende "diese".
Zeilen 3 und 4 sollen ausgelesen werden.
Die Position der auszulesenden Zeilen ist, bedingt durch die Position der Schlüsselwörter, variabel und habe ich schon ermittelt. Es sollte eine Lösung des Problems in Excel mittels Macro sein und nicht zusätzliche Programme involvieren.
Danke, Michael
Sub TextFileLesen() Dim sZeile As String
Dim i As Long, n As Long
Dim found As Boolean
n = 5 ' gesuchte Zeile
On Error GoTo errHandler
Open "c:\temp\test1.txt" For Input As #1
found = False: i = 0
Do While Not EOF(1)
i = i + 1
Line Input #1, sZeile
Debug.Print i, sZeile
If i = n Then found = True: Exit Do
Loop
Close #1
If found Then
MsgBox "Zeile " & i & ":" & sZeile
Else
MsgBox "Datei hat nur " & i & " Zeilen."
End If
Exit Sub
errHandler:
MsgBox "Fehler: " & Err.Number & vbCrLf & _
Err.Description
End Sub
MfG, Michael
danke! Sowas in dieser Art ist mir auch schon im Kopf rumgegangen. Da die Textdatei aber relativ viele Zeilen hat und ich zum Bestimmen der Zeilennummern der ersten und letzten auszulesenden Zelle auch schon einen "Do until EOF" Durchlauf brauche, wollte ich einen erneuten Durchlauf vermeiden. Es gibt also keine Möglichkeit eine bestimmte Zeile einer *.txt Datei direkt anzusprechen ohne "selbst mitzuzählen" (i = i + 1)?
Michael
das geht nur, wenn die Textdatei eine feste Satzlänge hat.
Aus der Online-Hilfe:
Open Pfadname For Modus [Access Zugriff] [Sperre] As [#]Dateinummer [Len=Satzlänge]
Modus muss dann Random sein.
HTH, Michael