How to: Add, Cut, and Paste a Control on a Page

Outlook Developer Reference

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