Weisen Sie einer dynamisch erstellten Schaltfläche Code zu

Ich versuche, eine von mir dynamisch erstellte Schaltfläche in einem Excel-Benutzerformular abzurufen, um ein Makro mit dem Namen auszuführentransfer was ich geschrieben habeModule 1 des Abschnitts "Module" meines Projekts.

Unten habe ich den Code, den ich bisher geschrieben habe, in das Benutzerformular eingefügt, das es tatsächlich schafft, das zu erstellenTransfer to Sheet Knopf im Rahmen (was ich auch dynamisch erstellt habe) aber aus irgendeinem Grund, wenn ich VBA laufen lasse, erhalte ich ein438 error Nachricht, die das sagtObject doesn't support this property or method.

Kann mir jemand sagen, wie ich das beheben kann?

Hier ist der Code:

<code>Dim framecontrol1 As Control

Set workitemframe = Controls.Add("Forms.Frame.1")
With workitemframe
    .Width = 400
    .Height = 400
    .Top = 160
    .Left = 2
    .ZOrder (1)
    .Visible = True
End With

workitemframe.Caption = "Test"
Set framecontrol1 = workitemframe.Controls.Add("Forms.commandbutton.1")

With framecontrol1
    .Width = 100
    .Top = 70
    .Left = 10
    .ZOrder (1)
    .Visible = True
    .Caption = "Transfer to Sheet"
End With
framecontrol1.OnAction = "transfer"
</code>

Antworten auf die Frage(2)

Ihre Antwort auf die Frage