VBA-Code für Addressierung an mehrere Labels

27/12/2008 - 19:00 von Reinhard Schüll | Report spam
Hallo NG,
in einem Tabellenblatt habe ich mehrere Labels (Label1,. ,Label32), die
ich nacheinander mit Text beschreiben möchte. Wie kann ich den Code so
vereinfachen, daß ich NICHT folgenden Syntax verwenden muss:

Select Case i
Case 1
Label1.Caption = xy
Case 2
Label2.Caption = xy
..
Case32
Label32.Caption=xy
Case Else
End Select

Gibt es evtl. so etwas wie ein Label-Feld?

Gruß Reinhard
 

Lesen sie die antworten

#1 stefan onken
28/12/2008 - 10:24 | Warnen spam
hallo Reinhard,
Reinhard Schüll wrote:
Hallo NG,
in einem Tabellenblatt habe ich mehrere Labels (Label1,.
,Label32), die ich nacheinander mit Text beschreiben möchte.
Wie kann ich den Code so vereinfachen, daß ich NICHT folgenden
Syntax verwenden muss:
Select Case i
Case 1
Label1.Caption = xy
Case 2
Label2.Caption = xy
..
Case32
Label32.Caption=xy
Case Else
End Select

Gibt es evtl. so etwas wie ein Label-Feld?




probiers mal mit OleObject:

i = 3
ActiveSheet.OLEObjects(i).Object.Caption = i

allerdings sind auch Commandbutton etc. OleObjects. Dann müsstest du in
einer Schleife alle OleObjects durchlaufen und prüfen, ob es sich um
ein Label handelt:

If TypeName(ActiveSheet.OLEObjects(i).Object) ="Label"

Gruß
stefan

Ähnliche fragen