Herbers Excel-Forum - das Archiv

Command Button Ereignis

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Command Button Ereignis
von: Marco

Geschrieben am: 10.04.2008 20:12:18

hallo an alle,
habe folgenden code, der commandbuttons beim draufzeigen grün markiert und beim verlassen wieder grau wird.

Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X  _
As Single, ByVal Y As Single)
CommandButton1.BackColor = vbGreen
End Sub


Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, _
ByVal Y As Single)
CommandButton1.BackColor = &H8000000F
End Sub


jetzt meine frage:
ich habe auf dem arbeitsblatt 40 commandbuttons. kann man einen einfachen code erzeugen, der das ereignis auf jeden commandbutton überträgt.
danke
grüße
marco

Bild

Betrifft: AW: Command Button Ereignis
von: Nepumuk
Geschrieben am: 10.04.2008 20:16:38
Hallo Marco,
schreib dir doch einfach eine Klasse der Buttons und Labels.
Gruß
Nepumuk

Bild

Betrifft: AW: Command Button Ereignis
von: Marco
Geschrieben am: 10.04.2008 20:20:22
hallo nepumuk,
erstmal vielen dank für den tip.
ich kenn mich mit klassenmodulen nicht aus. kannst du mir da weiterhelfen?
grüße
marco

Bild

Betrifft: AW: Command Button Ereignis
von: Nepumuk
Geschrieben am: 10.04.2008 20:24:35
Hallo Marco,
in welcher Beziehung stehen denn die Labels und Buttons? Kannst du mal eine Beispielmappe mit zwei Buttons und den dazugehörigen Labels hochladen, damit wir uns ein Bild davon machen können?
Gruß
Nepumuk

Bild

Betrifft: AW: Command Button Ereignis
von: Marco
Geschrieben am: 10.04.2008 20:33:38
hallo nepumuk,
hier die datei:

Die Datei https://www.herber.de/bbs/user/51421.xls wurde aus Datenschutzgründen gelöscht


grüße
marco

Bild

Betrifft: AW: Command Button Ereignis
von: Nepumuk

Geschrieben am: 10.04.2008 20:50:43
Hallo Marco,
ein Beispiel:
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private objCommandButton() As clsCommandButton

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Erase objCommandButton
End Sub

Private Sub Workbook_Open()
    Dim objOLEObject As OLEObject
    Dim objLabel As MSForms.Label
    Dim lngCounter As Long
    For Each objOLEObject In Tabelle1.OLEObjects
        If TypeOf objOLEObject.Object Is MSForms.Label Then
            Set objLabel = objOLEObject.Object
            Exit For
        End If
    Next
    For Each objOLEObject In Tabelle1.OLEObjects
        If TypeOf objOLEObject.Object Is MSForms.CommandButton Then
            lngCounter = lngCounter + 1
            Redim Preserve objCommandButton(1 To lngCounter)
            Set objCommandButton(lngCounter) = New clsCommandButton
            Set objCommandButton(lngCounter).prpSetCommandButton = objOLEObject.Object
            Set objCommandButton(lngCounter).prpSetLabel = objLabel
        End If
    Next
End Sub

' **********************************************************************
' Modul: clsCommandButton Typ: Klassenmodul
' **********************************************************************

Option Explicit

Private WithEvents mobjCommandButton As MSForms.CommandButton
Private WithEvents mobjLabel As MSForms.Label

Friend Property Set prpSetCommandButton(objCommandButton As MSForms.CommandButton)
    Set mobjCommandButton = objCommandButton
End Property

Friend Property Set prpSetLabel(objLabel As MSForms.Label)
    Set mobjLabel = objLabel
End Property

Private Sub mobjCommandButton_MouseMove(ByVal Button As Integer, _
        ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    mobjCommandButton.BackColor = vbGreen
End Sub

Private Sub mobjLabel_MouseMove(ByVal Button As Integer, _
        ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    mobjCommandButton.BackColor = &H8000000F
End Sub

Gruß
Nepumuk

Bild

Betrifft: AW: Command Button Ereignis
von: Marco
Geschrieben am: 10.04.2008 20:56:48
hallo nepumuk,
sieht ja sehr kompliziert aus:
funktioniert leider nicht.
grüße
marco

Bild

Betrifft: AW: Command Button Ereignis
von: Nepumuk
Geschrieben am: 10.04.2008 21:07:23
Hallo Marco,
klar funktioniert das: https://www.herber.de/bbs/user/51423.xls
Gruß
Nepumuk

Bild

Betrifft: AW: Command Button Ereignis
von: Marco

Geschrieben am: 10.04.2008 21:24:12
hallo nepumuk,
stimmt. es funktioniert.
vielen vielen dank für deine hilfe.
schönen abend noch.
grüße
marco

 Bild
Excel-Beispiele zum Thema "Command Button Ereignis"
Auflistung aller CommandBars Wert in einer CommandBarComboBox verändern
Auf UserForm-CommandButton-Klick eine Internetseite aufrufen CommandBar in Abhängigkeit vorhandener Makros erstellen
CommandButtons in verschiedenen Tabellen mit einem Makro CommandButtons sollen auf Schaltflächen-Klick deaktiviert werden
Zeilen bedingt durch SpinButton verschieben Maximalwert eines SpinButtons nach Zellwert festlegen
Zelleintrag durch OptionButton-Betätigung ein- und ausschalten Zellwerte über SpinButton und ScrollBar hochzählen