Checkboxen mit Index

Informationen und Beispiele zu den hier genannten Dialog-Elementen:


Excel-Version: 8.0 (Office 97)
nach unten

Betrifft: Checkboxen mit Index
von: Slurm McKenzie
Geschrieben am: 02.07.2002 - 12:46:26

Hallo zusammen,
ich progge gerade ausnahmsweise mal ein wenig in VBA und brauche (je nach Optionsauswahl des Anwenders) zwischen 9 und 14 CheckBoxen.
Gibt es eine Möglichkeit in VBA die Teile mit Index zu generieren??
Also in VB kann man das einfach machen, indem man eine CheckBox erstellt, diese kopiert und beim Einfügen sagt "neues Steuerelement erstellen"). Dann bekommen die Biester Indizes (CheckBox1(0), CheckBox1(1),...,CheckBox1(13)) und man kann wunderbar mit Schleifen arbeiten.
Und genau das ist der Grund, warum ich das gerne hätte!

Hat jemand eine Idee oder gar die Lösung??

Muchas Gratias,

Slurm McKenzie


nach oben   nach unten

Re: Checkboxen mit Index
von: MRR
Geschrieben am: 02.07.2002 - 13:15:55

Müssen die Teile denn generiert werden? Oder könnte man sie nicht von vornherein erstellen und nur bei Bedarf sichtbar machen?
Matthias

nach oben   nach unten

Re: Checkboxen mit Index
von: Slurm McKenzie
Geschrieben am: 02.07.2002 - 14:11:37

Hallo!

Ja, ich kann sie vorher erstellen. das ist kein Problem. Aber wie kann ich sie per Schleife durchlaufen?

Ich habe zwischen 9 und 14 Checkboxen, deren "Caption"-Eigenschaft wiederholt geändert werden müssen. Das tritt während des Programmablaufes auf. Deshalb will ich das per Schleife machen.
Die CheckBoxen befinden sich direkt auf dem Excel-Sheet (keine extra UserForm oder sowas).

Wie kann ich das realisieren?

Bitte helft mir, bin absoluter Newbie in VBA!!


nach oben   nach unten

Re: Checkboxen mit Index
von: MRR
Geschrieben am: 02.07.2002 - 21:10:13

Hi,
habe gerade im MS-Forum eine vergleichbare Frage gehabt. Du könntest Dir eine Prozedur mit evtl. folgendem Inhalt erstellen (auch wenn mir noch nicht klar ist, was Du denn nun als Beschriftung für die Checkboxen haben willst...)

Sub Checkis_beschriften()
Dim OB
Dim As Integer
i = 1
For Each OB In ActiveSheet.Shapes
  If InStr(OB.OLEFormat.ProgID, "CheckBox") > 0 Then
    OB.OLEFormat.Object.Object.Caption = "Das ist Nr. " & i
    'Evtl. noch das Kontrollfeld ein- oder ausschalten...
    OB.OLEFormat.Object.Object.Value = False
    i = i + 1
  End If
Next
End Sub

HTH, Matthias

nach oben   nach unten

Re: Checkboxen mit Index
von: Slurm McKenzie
Geschrieben am: 03.07.2002 - 08:18:09

Hey, cool, danke!!

Funzt einwandfrei!


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Erweiterte Listenauswahl"