Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
564to568
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
564to568
564to568
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Buttons über Schleife ansprechen

Buttons über Schleife ansprechen
14.02.2005 10:28:50
Rainer
Hallo
möchte Buttons in einem Excel-Sheet über Schleife abfragen. Folgendes Makro funktioniert nicht, da Excel das Objekt/Objektklasse Controls nicht findet. ("

Sub oder Funktion nicht definiert")

Sub enable()
Dim i As Byte
For i = 1 To 5
Controls("cmdX" & i).Enabled = False
Next i
End Sub

Wie mach ich das denn richtig? Danke und Grüße
AW: Buttons über Schleife ansprechen
Heiko
Hallo Rainer,
hier ein Beispiel für Checkboxen.

Private Sub CommandButton7_Click()
Dim i As Integer
For i = 1 To 4
ActiveSheet.OLEObjects("CheckBox" & CStr(i)).Object.Value = False
Next i
End Sub

Müßtest du dir für CommandButton´s anpassen.
Gruß Heiko
PS: Rückmeldung wäre nett !
AW: Buttons über Schleife ansprechen
Rainer
Danke erstmal. Folgendes Makro funktioniert. Allerdings werden hiermit immer alle CommandButtons angesprochen.
Weist du, ob man die Buttons bzw. Checkboxen mit Namen ansprechen kann?

Private Sub enable3()
Dim i As Integer
For i = 1 To 4
ActiveSheet.OLEObjects("CommandButton" & CStr(i)).Object.Enabled = True
Next i
End Sub

Gruß Rainer

Anzeige
AW: Buttons über Schleife ansprechen
Heiko
Hallo Rainer,
was meinst du mit Namen, mit dieser Zeile
ActiveSheet.OLEObjects("CommandButton" & CStr(i)).Object.Enabled = True
sprichst du den CommandButton namentlich an, also das was du in (Name) eingetragen hast.
Und da deine Schleife von 1 bis 4 geht werden dann natürlich auch alle 4 Buttons angesprochen, das ist doch der Sinn der Schleife oder ?
Gruß Heiko
AW: Buttons über Schleife ansprechen
Rainer
Hallo Heiko
Stell dir vor, ich nenne meine Buttons Horst1 - Horst4. Dann ist es nicht möglich diese über folgendes Makro anzusprechen.
Sub enable3()
Dim i As Integer
For i = 1 To 4
ActiveSheet.OLEObjects("Horst" & CStr(i)).Object.Enabled = True
Next i
Der Ausdruck in "" bezieht sich ja nur auf den Objekttyp CommandButton. Oder geht das doch irgendwie?
Anzeige
AW: Buttons über Schleife ansprechen
Heiko
Hallo Rainer,
das läuft bei mir ohne Probleme (Excel 2002), macht meine 4 Testbuttons mit dem Namen Horst1 bis 4 schwarz

Private Sub CommandButton20_Click()
Dim i As Integer
For i = 1 To 4
ActiveSheet.OLEObjects("Horst" & CStr(i)).Object.BackColor = 1
Next i
End Sub

Hast du das denn schon versucht ?
Gruß Heiko
AW: Buttons über Schleife ansprechen
Rainer
Hallo Heiko
Hast Du den Namen Horst auch über das Eigenschaftsfenster zugewiesen (Name) oder per Makro?
Gruß Rainer
AW: Buttons über Schleife ansprechen
Heiko
Hallo Rainer,
über das Eigenschaftsfenster, siehe hier.
Userbild
Gruß Heiko
Anzeige
AW: Buttons über Schleife ansprechen
Rainer
Vielen Dank für deine nützlichen Tipps. Werde jetzt mal suchen warum es bei mit nicht funktioniert. Vielleicht hast du ja noch eine Idee. So sieht mein Sheet aus.
https://www.herber.de/bbs/user/18045.ppt
Und hier das Makro

Sub farbe()
Sheets(2).OLEObjects("Horst5").Object.BackColor = 1
End Sub

Gruß und Danke
AW: Buttons über Schleife ansprechen
Heiko
Hallo Rainer,
da bin ich mit meinem Latein am Ende.
Als Ideen vielleicht noch :
Gibt es denn eine Fehlermeldung oder läuft der Code durch und es tut sich nur nichts.
Ist das wirklich Sheets(2), schon mal mit ActiveSheet oder Sheets("Tabelle2") versucht.
Wenn das alles nicht hilft, liegt es vielleicht an Version 8.0.
Denn bei mir läuft das so auf EXCEl 2003 und zuhaus auf EXCEL 2000 auch.
Gruß Heiko
Anzeige
AW: Buttons über Schleife ansprechen
Rainer
Vielen Dank. Werd mich die nächsten Tage mal schlau machen.
Gruß Rainer

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige