Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Steuervariable bei Button.onAction vergeben?!

Betrifft: Steuervariable bei Button.onAction vergeben?! von: Andreas Hanisch
Geschrieben am: 15.08.2008 10:19:16

Hallo Herber Fans,

ich hänge derzeit am Problem fest, wie ich nach dem Drücken eines Buttons zusätzlich zu der Information, welcher Code über die .OnAction Eigenschaft aufgerufen werden soll, auch eine Variable vergeben kann, mit der der aufgerufene Code dann weiterarbeitet. OnAction ein zweites Mal einfügen und dort dann die Variable zu vergeben hat nicht funktioniert.
Mit welcher Methode kann ich das realisieren? Ich habe im Objektkatalog schon viel zum Thema Button abgegrast, aber keinen entsprechenden Befehl gefunden.

https://www.herber.de/bbs/user/54622.xls

Vielen Dank für Eine Idee von Euch.

Grüße, Andreas Hanisch

  

Betrifft: AW: Steuervariable bei Button.onAction vergeben?! von: Ramses
Geschrieben am: 15.08.2008 10:31:49

Hallo

ändere den Code im Modul "TestCode" so

Option Explicit

Sub VariablenTest(defPar As Variant)
    
    MsgBox "Hallo ich bin ein Code und werde nun mit Variable: " & defPar & " weiterarbeiten."
    
End Sub


und das erstellen der Commandbar nun so


Sub CreateMyCommandBar()
    Dim cb As CommandBar, cc As CommandBarButton
    DeleteMyCommandBar
    Set cb = Application.CommandBars.Add(MyCommandBarName, msoBarTop, False, True)
    
    With cb
        Set cc = cb.Controls.Add(msoControlButton, , , , True)
        With cc
            .Caption = "TestButton 1"
            .OnAction = "VariablenTest(""Test"")"
            ' .OnAction SteuerVariable = 1 'Das ist die fehlerhafte Zeile.
            .Style = msoButtonCaption
        End With
    
    
        Set cc = cb.Controls.Add(msoControlButton, , , , True)
        With cc
            .Caption = "|TestButton 2"
            .OnAction = "VariablenTest(2)"
            ' .OnAction SteuerVariable = 1
            .Style = msoButtonCaption
        End With
    
    
        Set cc = Nothing
        .Visible = True
        .Left = 0
        .Top = 150
    End With
    
    Set cb = Nothing
End Sub


Gruss Rainer


  

Betrifft: AW: Steuervariable bei Button.onAction vergeben?! von: Andreas Hanisch
Geschrieben am: 15.08.2008 10:34:45

Hallo Ramses,

das funktioniert. Vielen Dank! In meinen ersten/ meisten Codes sind die () immer leer geblieben, aber so langsam erschließt sich mir auch deren Sinn...

Dir und allen anderen Herber Fans ein schönes Wochenende.

Grüße, Andreas