Office: klickereignis eines dynamischen Button per vba auslösen

Helfe beim Thema klickereignis eines dynamischen Button per vba auslösen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, habe einen dynamisch erzeugten Button + Klasse, dies funktioniert, jetzt muß ich aber das Klickereignis dieses Button per VBA auslösen. wie kann... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Frodo, 19. September 2026 um 11:49 Uhr.

  1. Frodo Neuer User

    klickereignis eines dynamischen Button per vba auslösen


    Hallo,
    habe einen dynamisch erzeugten Button + Klasse, dies funktioniert, jetzt muß ich aber das Klickereignis dieses Button per VBA auslösen. wie kann ich diesen jetzt ansprechen, in der Objektliste der Userform erscheint er ja nicht.

    Gruß Frodo
     
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    Hallo Frodo

    ich kann es nur an meiner Datei testen, da ich nicht auf fremde Rechner schaue.
    Code:
    Option Explicit
    
    Private Sub CommandButton1_Click()
        CommandButton2_Click
    End Sub
    
    Private Sub CommandButton2_Click()
        MsgBox 1
    End Sub
    
    Gruß Hajo
     
    Zuletzt bearbeitet: 19. September 2026 um 14:50 Uhr
  3. Frodo Neuer User
    Hallo Hajo,
    vielleicht hilft das was ich habe

    in der Userform

    Private Sub UserForm_Initialize()
    Dim objButton As MSForms.CommandButton
    Dim objKlasse As cls_Buttons

    Set colButtons = New Collection

    Set objButton = Me.Controls.Add( _
    "Forms.CommandButton.1", _
    "cmdSchliessen", _
    True)

    With objButton
    .Left = Me.Width + 320
    .Top = Me.Height + 1903
    .Width = 80
    .Height = 25
    .Caption = "Beenden"
    .BackColor = RGB(255, 255, 255)
    End With
    Me.Tag = "Aktiv"
    Me.DatenAnzeigen
    Set objKlasse = New cls_Buttons

    objKlasse.Initialisieren objButton, Me

    colButtons.Add objKlasse


    NamenLaden
    ElementeLaden
    End Sub


    in der Klasse

    Option Explicit
    Private WithEvents mButton As MSForms.CommandButton
    Private mUserForm As Object

    Public Sub Initialisieren( _
    ByVal objButton As MSForms.CommandButton, _
    ByVal objUserForm As Object)

    Set mButton = objButton
    Set mUserForm = objUserForm
    MsgBox mUserForm.Tag
    End Sub

    Private Sub mButton_Click()

    Unload mUserForm

    End Sub
    Private Sub Kreuz()
    If mUserForm.Tag = "Schliessen" Then
    Unload mUserForm
    End If
    End Sub

    Mit folgendem fange ich das Schließkreuz ab

    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    ' Prüfen, ob der Schließbefehl vom Schließenkreuz (vbFormControlMenu) kommt
    If CloseMode = vbFormControlMenu Then
    ' Schließen abbrechen
    Cancel = True
    Me.Tag = "Schliessen"
    MsgBox "Bitte nutzen Sie den Button zum Schließen.", vbInformation, "Hinweis"

    End If

    Ende
    End Sub
    Private Sub Ende()

    Me.ScrollTop = Me.ScrollHeight
    End Sub

    Das Problem ist, wird die Userform über das Kreuz entladen, wird die Klasse nicht entladen. Dies gibt ein Problem wenn bei erneutem Aufruf der Userform in einem Auswahlmenue die Caption abgefragt werden soll.

    Gruß Frodo
     
  4. Hajo_Zi
    Hajo_Zi Erfahrener User

    klickereignis eines dynamischen Button per vba auslösen

    ich baue keine Datei nach. Ein Nachbau sieht anders aus als das Original.
    Ich hab das Problem schon in der Tabnelle nachgebaut.
    Viewlleicht sollte die Datei verlinkt werden?

     
  5. Frodo Neuer User
    Habe auf die Schnelle eine Kopie gemacht.
    Hoffe das passt.

    Gruß Frodo
     
  6. Hajo_Zi
    Hajo_Zi Erfahrener User
    ich kann Dir leider nicht helfen. Ich konnte die Userform mit 2 Schaltern nicht finden.
    Vielleicht solltest Du schreiben welche es ist? Vielleicht habe ich was übersehen?
    Du hast meinen Code schon in der Userform getestet? Der sollte eigentlich gehen.

     
  7. Frodo Neuer User
    Hajo, du hast nichts übersehen, es gibt keine Form mit statischen Button, dein Beispiel gilt für statische Button, bei mir ist er dynamisch erstellt.
    Wenn du im Editor in deinem Beispiel die Form aufrufst und dann Code anzeigen wählst, dann siehst du oben in der Auswahl außer der Userform auch die beiden Button. Machst du das mit einer meiner Formen, steht dort nur die Userform, obwohl ja der Button vorhanden ist. In meinem Fall steht auch das was der Button machen soll in der Klasse.

    Gruß Frodo
     
  8. Hajo_Zi
    Hajo_Zi Erfahrener User

    klickereignis eines dynamischen Button per vba auslösen

    das habe ich überlesen. Entschuldigung.
    Bei Code per VBA schreiben bin ich nicht der Fachmann.
    Aber für andere Antworter solltest Du schreiben welche UserForm.

     
  9. knobbi38 hat Ahnung
    Unabhängig davon, sollte eine so etwas nicht gemacht werden - ist keine "saubere" Programmierung. Rufe im Click_Event
    eine Prozedur auf, welche du auch von anderer Stelle aufrufen kannst.
    Klassen werden übrigens im UF Terminate- oder QueryClose Event aufgeräumt und sollten sich auch nicht selbst terminieren.

    Knobbi38
     
Thema:

klickereignis eines dynamischen Button per vba auslösen

Die Seite wird geladen...
  1. klickereignis eines dynamischen Button per vba auslösen - Similar Threads - klickereignis dynamischen Button

  2. Dynamische Aktualisierung aus mehreren Dateien

    in Microsoft Excel Hilfe
    Dynamische Aktualisierung aus mehreren Dateien: Hallo, ich habe eine Sammeldatei, die aus mehreren Excel Dateien Werte über direkte Zellbezüge bzw. SVERWEISE die Daten aktualisiert. Diese Sammeldatei ist für mehrere Länder definiert. Die Pfade...
  3. Excel Datenüberprüfung mit dynamischer Spalte

    in Microsoft Excel Hilfe
    Excel Datenüberprüfung mit dynamischer Spalte: Hallo, ich habe ein Formular mit fixen Texten (in Zellen) mit einer Übersetzungstabelle in einem separaten Blatt via Formeln in dynamische Textfelder abgeändert. Das funktioniert bestens. Das...
  4. Diagrammdaten dynamisch erzeugen

    in Microsoft Excel Hilfe
    Diagrammdaten dynamisch erzeugen: Hallo, dank der tatkräftigen Hilfe von allen in diesem (Office 365) - SUMMENPRODUKT dynamisch aus bestimmten Tabellenblättern Thread bin ich total weit mit meinem Projekt. Nun fehlt mir noch...
  5. SUMMENPRODUKT dynamisch aus bestimmten Tabellenblättern

    in Microsoft Excel Hilfe
    SUMMENPRODUKT dynamisch aus bestimmten Tabellenblättern: Hallo zusammen, ich habe bei meiner bisherigen Zählerstandsmappe bisher folgende Grundstruktur: Es gibt jeweils Tabellenblätter (2024, 2025 etc.) wo in Spalte A (A3-A367 bzw. bei Schaltjahr bis...
  6. Formel: Mehrere Werte vergleichen mit dynamischer Tabelle

    in Microsoft Excel Hilfe
    Formel: Mehrere Werte vergleichen mit dynamischer Tabelle: Hallo zusammen Ich suche eine funktionierende Formel für mehrere Vergleichswerte in verschiedene Arbeitsmappen. Ausgangslage:Die Suchmatrix in welcher Tabelle gesucht wird, soll über die Zelle...
  7. SUMMEWENN mit dynamische Tabelle auf 1 Spalte eingrenzen

    in Microsoft Excel Hilfe
    SUMMEWENN mit dynamische Tabelle auf 1 Spalte eingrenzen: Hallo, wie kann ich bei SUMMEWENN mit dyn. Tabellen den Spaltenbereich eingrenzen? ich habe mit Power Query eine Tabelle zusammengefasst [ATTACH] und mit EINDEUTIG die unterschiedlichen Treffer...
  8. Fehler Klickereignis

    in Microsoft Access Hilfe
    Fehler Klickereignis: Hallo, ich habe einen merkwürdigen Fehler den ich nicht nachvollziehen kann. Ich habe eine DB die aus Front und eine Back besteht. In der Front sind alle Formulare Abfragen und Berichte drin....
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden