Add, Cut, and Paste a Control on a Page
The following example uses the Microsoft Forms 2.0 Controls collection, and the Controls.Add, Controls.Cut, and Page.Paste methods to add, cut, and paste a control on a Page of a MultiPage. The control involved in the cut and paste operations is dynamically added to the form.
This example assumes the user will add, then cut, then paste the new control.
To use this example, copy this sample code to the Script Editor of a form. To run the code you need to open the form so the Open event will activate. Make sure that the form contains:
Three CommandButton controls named CommandButton1 through CommandButton3.
A MultiPage named MultiPage1.
Dim CommandButton1
Dim CommandButton2
Dim CommandButton3
Dim MultiPage1
Dim MyTextBox
Sub CommandButton1_Click()
Set MyTextBox = MultiPage1.Pages(MultiPage1.Value).Controls.Add("Forms.TextBox.1", "MyTextBox", 1)
CommandButton2.Enabled = True
CommandButton1.Enabled = False
End Sub
Sub CommandButton2_Click()
MultiPage1.Pages(MultiPage1.Value).Controls.Cut
CommandButton3.Enabled = True
CommandButton2.Enabled = False
End Sub
Sub CommandButton3_Click()
Dim MyPage
Set MyPage = MultiPage1.Pages.Item(MultiPage1.Value)
MyPage.Paste
CommandButton3.Enabled = False
End Sub
Sub Item_Open()
Set CommandButton1 = Item.GetInspector.ModifiedFormPages.Item("P.2").Controls("CommandButton1")
Set CommandButton2 = Item.GetInspector.ModifiedFormPages.Item("P.2").Controls("CommandButton2")
Set CommandButton3 = Item.GetInspector.ModifiedFormPages.Item("P.2").Controls("CommandButton3")
Set MultiPage1 = Item.GetInspector.ModifiedFormPages.Item("P.2").Controls("MultiPage1")
CommandButton1.Caption = "Add"
CommandButton2.Caption = "Cut"
CommandButton3.Caption = "Paste"
CommandButton1.Enabled = True
CommandButton2.Enabled = False
CommandButton3.Enabled = False
End Sub
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.