Na lang zoeken heb ik gevonden dat ik toch gebruik moet maken van withevents om in dynamische forms/frames acties te definieren.
Op dit moment heb ik de volgende 2 stukken code:
Module 1
In de worksheet heb ik de volgende code:
Als ik de code manueel in 2 stappen uitvoer:
Als ik de code automatisch uitvoer met de optie:
add_button -> uit de worksheet
Dan werkt de button niet.
Waar dit probleem ligt weet ik niet. Ik heb wel het idee dat ik iets fout doe. Wat er fout gaat weet ik niet.
Op dit moment heb ik de volgende 2 stukken code:
Module 1
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| Public BaseFrame As Frame
Sub add_button()
' Create Frame for Metric Chooser
Set BaseFrame = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Frame.1", Link:=False, _
DisplayAsIcon:=False, Left:=10, Top:=10, _
Width:=490, Height:=230).Object
With BaseFrame
.Object.Caption = "Metric Requirement - Chooser"
.Name = "BaseFrame"
.Enabled = True
End With
BaseFrame.Select
Selection.Verb Verb:=xlVerbPrimary
End Sub |
In de worksheet heb ik de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| Dim WithEvents clear_button As CommandButton
Private Sub clear_button_Click()
MsgBox "test"
End Sub
Sub add_button()
Module2.add_button
create_button_create
End Sub
Sub create_button_create()
Set clear_button = BaseFrame.Controls.Add("Forms.CommandButton.1", "clear_button", True)
With clear_button
.Left = 100
.Top = 10
.Width = 75
.Height = 30
.Name = "clear_button"
.Caption = "Clear"
End With
End Sub |
Als ik de code manueel in 2 stappen uitvoer:
- Module1.Add_button
- create_button_create
Als ik de code automatisch uitvoer met de optie:
add_button -> uit de worksheet
Dan werkt de button niet.
Waar dit probleem ligt weet ik niet. Ik heb wel het idee dat ik iets fout doe. Wat er fout gaat weet ik niet.