da mir hier schon einige mal geholfen wurde, dachte ich ich versuch es nochmal :)
Mit folgendem Code wird eine Txt-Datei in einer ListBox angezeigt. Die Txt-Datei hat als Trennzeichen Tabstopp. Da es sich um unterschiedliche Txt-Datein handelt variiert die Anzahl der Columns. Der Column-Count der ListBox wird automatisch angepasst.
Das funktioniert so weit ohne Probleme. Wenn die Txt-Datei allerdings mehr als 10 Columns besitzt bekomme ich immer den Laufzeitfehler 380 und folgender Code ist markiert
Me.ListBox2.List(Me.ListBox2.ListCount - 1, idx) = sCol(idx)
Ich stehe gerade ziemlich auf dem Schlauch und weiß nicht so richtig, woran das liegt. Es hat natürlich etwas mit dem Columncount zu tun, aber wie umgehe ich das?
Hier der vollständige Code des Subs:
Private Sub ListBox1_Click() 'Vorschau in ListBox2
Dim i As Integer
Dim idx As Integer
Dim intCounter As Integer
Dim strLine As String
Dim strList() As String
Dim ff As Long
Dim line As String
Dim sLine As String
Dim sCol() As String
i = FreeFile
Dim lbCol As String
ListBox2.Clear
For x = 1 To 10
UserForm1.Controls("cRow" & x).Value = False
UserForm1.Controls("cRow" & x).Visible = False
Next
If optTab.Value = True Then sepChar = vbTab
If optSemi.Value = True Then sepChar = ";"
If optComma.Value = True Then sepChar = ","
With ListBox1
If .ListIndex = -1 Then Exit Sub
If .Selected(.ListIndex) = False Then Exit Sub
sFile = .List(.ListIndex)
End With
Open Folder & "\" & sFile For Input As #i
Do While Not EOF(i)
Line Input #i, sLine
sCol = Split(sLine, sepChar)
Me.ListBox2.AddItem
For idx = LBound(sCol) To UBound(sCol)
ListBox2.ColumnCount = UBound(sCol) + 1
Me.ListBox2.List(Me.ListBox2.ListCount - 1, idx) = sCol(idx)
Next idx
Loop
Close #i
End Sub