Dynamisch Buttons auf Formularen erstellen in VBA

  • Excel

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von peterfido.

    Dynamisch Buttons auf Formularen erstellen in VBA

    Hallo zusammen!

    Bin mich jetzt seit etwa einem Tag in VBA am einarbeiten um ein Projekt für unsere Firma durchzuführen...

    Zuerst mal ne triviale Frage (Und nicht der Grund meines Posts): Wenn ich Excel 2003 habe, wie heisst dann die Bezeichnung meiner VBA-Version?

    Nun zur eigentlichen Frage: Ist es Möglich Buttons (und auch andere Elemente) in VBA auf einem Forumular dynamisch zu erstellen? Also nicht schon zur "Programmierzeit" zu definieren (mittels Editor), sondern erst während dem ausführen des Programms.

    Falls ja, wäre ich um einen Link oder um ein Kodeschnipsel froh!

    Vielen Dank!

    Michi
    Möglich ist es schon. Allerdings ist es nicht einfach einem Commandbutton ein Event zuzuweisen.

    Visual Basic-Quellcode

    1. Dim cmd1 As MSForms.CommandButton
    2. Set cmd1 = Me.Controls.Add("Forms.CommandButton.1", "cmd1", True)
    3. With cmd1
    4. .Caption = "Knopf"
    5. .Left = 30
    6. .Top = 30
    7. .Height = 30
    8. .Width = 60
    9. End With
    10. Dim lbl1 As MSForms.Label
    11. Set lbl1 = Me.Controls.Add("Forms.Label.1", "lbl1", True)
    12. With lbl1
    13. .Caption = "Textlabel"
    14. .Left = 30
    15. .Top = 90
    16. .Height = 30
    17. .Width = 60
    18. End With


    Die VB-Version ist evtl abhänging von Patches. Direkt abfragen kann man es m.E. nicht.
    Auf Version 6 lässt sich so prüfen:

    Visual Basic-Quellcode

    1. If VBA6 Then
    2. MsgBox "=VBA6"
    3. Else
    4. MsgBox "<>VBA6"
    5. End If
    Gruß
    Peterfido

    Keine Unterstützung per PN!