Sequenzielle Variablennamen in Schleife erzeugen und durchlaufen?

Hypergrip

Grünschnabel
Ahoi

Ich habe hier ein (wahrscheinlich für die meisten recht triviales) Problem bzw eine Frage zur Verbesserung meines Sourcecodes. Folgende Situation:
Es werden insgesammt 10 Objekte erstellt mit den Namen "Squad1_Schiff1", "Squad1_Schiff2", "Squad1_Schiff3", "Squad1_Schiff4", "Squad1_Schiff5" und das ganze nochmal mit "Squad2_". Also im Grunde Namen, die aus zwei festen Strings und zwei sequenziellen Zahlen bestehen.

Jetzt habe ich eine Prozedur, welches bei jedem Objekt die Funktion alive() ausführt und je nach Rückgabewert die Farbe eines Labels verändert. Wie im folgenden Source zu erkennen, enthalten die Namen der Labels ebenfalls die sequenziellen Zahlen die schon in den Objektnamen verwendet wurden.

Code:
[...]
If Squad1_Schiff1.alive <> 1 Then 'falls alive() nicht 1 zurückliefert...
        Labels1s1p.ForeColor = &HFF& 'Farbe des entsprechenden Labels auf rot setzen
        Labels1s1pm.ForeColor = &HFF& 'Farbe des entsprechenden Labels (Teil2) auf rot setzen
    Else 'ansonsten...
        Labels1s1p.ForeColor = &H0& 'Farbe des Labels auf schwarz setzen
        Labels1s1pm.ForeColor = &H0& 'Farbe des Labels (Teil 2) auf schwarz setzen
    End If
    
    If Squad1_Schiff2.alive <> 1 Then 'Das ganze für Schiff 2...
        Labels1s2p.ForeColor = &HFF&
        Labels1s2pm.ForeColor = &HFF&
    Else
        Labels1s2p.ForeColor = &H0&
        Labels1s2pm.ForeColor = &H0&
    End If
    
    If Squad1_Schiff3.alive <> 1 Then 'Schiff 3...
        Labels1s3p.ForeColor = &HFF&
        Labels1s3pm.ForeColor = &HFF&
    Else
        Labels1s3p.ForeColor = &H0&
        Labels1s3pm.ForeColor = &H0&
    End If

    If Squad1_Schiff4.alive <> 1 Then 'ratet mal, welches Schiff jetzt...
        Labels1s4p.ForeColor = &HFF&
        Labels1s4pm.ForeColor = &HFF&
    Else
        Labels1s4p.ForeColor = &H0&
        Labels1s4pm.ForeColor = &H0&
    End If
    
    If Squad1_Schiff5.alive <> 1 Then 'blubb
        Labels1s5p.ForeColor = &HFF&
        Labels1s5pm.ForeColor = &HFF&
    Else
        Labels1s5p.ForeColor = &H0&
        Labels1s5pm.ForeColor = &H0&
    End If

'Das gleiche nochmal für die Schiffe in Squad 2...
[...]

Meine Frage ist nun, ob/wie ich das ganze mit einer Schleifenkonstruktion regeln kann. Das Problem hierbei ist nicht die Syntax einer Schleife, sondern, wie ich die namen "Squad1_Schiff1" "Labels1s1pm" durchgehen kann.
Ich hoffe, mein Problem ist deutlich geworden...
Bin für jede Hilfe dankbar :)

/Oliver
 

Neue Beiträge

Zurück