Arrays! Bitte Hilfe

TheLuCKer

Mitglied
Hallo Leute,

um gleich auf den Punkt zu kommen. Ich habe es hinbekommen, dass es durch Array eine txt-Datei liest und mir einzelne Zeilen wiedergeben kann. Jetzt möchte ich, dass keine Fehlermeldung mehr kommt, wenn die eine Zeile nicht vorhandenen ist. Zum Beispiel:

zeile1 = atxt(0) 'atxt is die Array
zeile2 = atxt(1)

List1.AddItem zeile1
List1.AddItem zeile2

wenn jetzt bloß eine zeile im txtdokument ist, dann komm eine Fehlermeldung, kann ich des ihrgentwie abschalten. Danke im Vorraus!

Jonny
 
Fehler ignorieren geht mit On Error Resume Next. Allerdings werden damit ALLE Fehler ignoriert, die in der entsprechenden Prozedur auftreten. Sinnvoller wäre es vorher die Anzahl der Zeilen in der Textdatei zu prüfen!
Edit: Oder du prüfst, ob der Eintrag im Array vorhanden ist. Mit UBound(Arrayname) kannst du dir den höchsten Arrayindex ausgeben lassen, mit LBound (Arrayname) den niedrigsten:
Code:
zeile1 = atxt(0) 'atxt is die Array
zeile2 = atxt(1)

List1.AddItem zeile1
List1.AddItem zeile2


If Ubound(atxt)>=0 then zeile1 = atxt(0)
If Ubound(atxt)>=1 then zeile2 = atxt(1)
usw...
Aber warum hast du denn für jede Zeile eine eigene Variable? Das ist doch total umständlich und viel schreibarbeit!
 
Zuletzt bearbeitet:
Hallo,
Machs doch so:
Code:
Dim KNr As Integer
Dim Inhalt As String
Dim Zeile() As String
Dim Datei As String
Dim AnzahlZeilen As Long
Dim i As Long
 
Datei = "C:\Datei.txt"
KNr = FreeFile
Inhalt = Space(FileLen(Datei))
Open Datei For Binary As KNr
Get KNr, , Inhalt
Zeile = Split(Inhalt, vbNewLine)
AnzahlZeilen = Format$(UBound(Zeile) + 1, "#,##0")
i = 0
Do while AnzahlZeilen > i
 List1.AddItem Zeile(i)
 i = i+1
Loop
Close KNr
Kann es leider jetzt nicht gerade testen.

Grüsse
 
Zurück