Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Zeile aus Textdatei
17.02.2007 10:17:12
Tino
Hallo,
vieleicht könnt ihr mir helfen.
möchte aus einer ziemlich großen anzahl (größer 1800) von Textdateien eine bestimmte Zeile lesen!
Nun meine Frage ist es möglich, wenn mir die Zeilennummer bekannt ist, diese direkt auszulesen
ohne jedesmal die komplette Textdatei einzulesen (dauert mir zu lang)?
Könnt Ihr mir Helfen? Danke im vorraus!
MfG
Tino

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile aus Textdatei
17.02.2007 10:53:00
Oberschlumpf
Hi Tino
Meines Wissens funzt das direkte Zeilenauslesen nur dann, wenn deine txt-Datei die Struktur einer Datenbank hat.
Das heißt also feste Spaltenbreite.
In diesem Fall könntest du mit

Open "datei.txt" For Random As #1 Len zeilenlänge
Get #1,zeilennummer

(genaue Syntax ist mir gerad nicht bekannt - müsste ich auch erst mal wieder nachlesen)
auf den gewünschten Datensatz (Zeile) zugreifen.
Wenn es sich aber in der txt-Datei um Fließtext handelt, dann geht es nur mit

Open "datei.txt" For Input As #1
Do While Not Eof(1)
Line Input #1, zeile
If InStr(1,zeile,"Suchtext") > 0 Then
'hier der Code, der bei Finden deiner Zeile ausgeführt werden soll
Close 'wenn nach Finden der Zeile nichts weiter geschehen soll
Exit Sub 'wenn nach Finden der Zeile nichts weiter geschehen soll
End If
Loop
Close

Konnte ich helfen?
Ciao
Thorsten
Anzeige
AW: Zeile aus Textdatei
17.02.2007 11:08:47
Cardexperte
Hallo Tino,
so sollte es gehen, es wird immer die 5. Zeile ausgelesen und in Zelle a1 gechrieben:

Sub cmdlesen()
Dim dateiname As String, Dateinr As Integer
Dim temp As String
dateiname = "test.Asc"
Dateinr = FreeFile
Open dateiname For Input As Dateinr
Do While Not EOF(Dateinr)
Line Input #Dateinr, temp
i = i + 1
If i = 5 Then Cells(1, 1).Value = temp
Loop
Close Dateinr
End Sub

dies kann man natürlich so ausbauen, dass alle z.B. ASC in einem Verzeichnis ausgelesen werden und dann nacheinander ins Excelblatt geschrieben werden.
Gruss Ws
Anzeige
AW: Zeile aus Textdatei
17.02.2007 11:24:00
Tino
Hallo Oberschlumpf u. Ws,
Danke erstmal für Eure schnelle Antwort.
Werde Eure Versionen mal Testen, ob diese den gewünschten erfolg für mich haben.
Werde Rückmeldung geben.
Danke
Tino

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige