hat jemand eine Idee, wie ich folgenden Code verkürzen kann?
Für jedes Case unterscheidet sich das immer nur durch die Zahl in dem Datenfeld gTeilnehmerLi(i).P1 <--
Ich steh da irgendwie auf der Leitung.
Private Sub ListboxenAktualisieren(LBnr As Integer)
'LBnr = 0 beide Listboxen, LBnr = 1 Listbox1, LBnr = 2 Listbox2
Dim i As Integer
Dim j As IntegerIf (LBnr = 0) Or (LBnr = 1) Then
'Listbox1 füllen
ListBox1.Clear
j = 0
Select Case gAktRunde
Case 1
For i = 0 To gAnzTeilnehmer - 1
If gTeilnehmerLi(i).P1 < 1 Then 'P1
ListBox1.AddItem
ListBox1.List(j, 0) = gTeilnehmerLi(i).NN
ListBox1.List(j, 1) = gTeilnehmerLi(i).VN
ListBox1.List(j, 2) = gTeilnehmerLi(i).Geschl
j = j + 1
End If
Next
Case 2
For i = 0 To gAnzTeilnehmer - 1
If gTeilnehmerLi(i).P2 < 1 Then 'P2
ListBox1.AddItem
ListBox1.List(j, 0) = gTeilnehmerLi(i).NN
ListBox1.List(j, 1) = gTeilnehmerLi(i).VN
ListBox1.List(j, 2) = gTeilnehmerLi(i).Geschl
j = j + 1
End If
Next
Case 3
Case 4
Case 5
Case 6
Case 7
Case 8
End Select
End If
If (LBnr = 0) Or (LBnr = 2) Then
'Listbox2 füllen
ListBox2.Clear
j = 0
For i = 0 To gAnzTeilnehmer - 1
If gTeilnehmerLi(i).P1 < 1 Then
ListBox2.AddItem
ListBox2.List(j, 0) = gTeilnehmerLi(i).NN
ListBox2.List(j, 1) = gTeilnehmerLi(i).VN
ListBox2.List(j, 2) = gTeilnehmerLi(i).Geschl
j = j + 1
End If
Next
End If
End Sub
Code eingefügt mit Syntaxhighlighter 2.1
Gruss Jens