Excel VBA UserForm CommandButton

CommandButton is one of the UserForm control. You can select and drag CommandButton on the UserForm. CommandButton is used to run or execute a macro or procedure. It performs a task or an action when a user clicks on a command button. Command Button can be used on the WorkSheet or UserForm. Please find more details about ActiveX CommandButton Control in the following chapter. You can see how we are adding or deleting command button on the UserForm or Worksheet.



50+ Project Management Templates Pack
Excel PowerPoint Word

Advanced Project Plan & Portfolio Template
Excel Template

Business Presentations Templates Pack
PowerPoint Slides

20+ Excel Project Management Pack
Excel Templates

20+ PowerPoint Project Management Pack
PowerPoint Templates

10+ MS Word Project Management Pack
Word Templates


VBA ActiveX CommandButton Control on the UserForm

Please find more details about VBA ActiveX Command Button Control on the UserForm.

  1. Go To Developer Tab and then click Visual Basic from the Code or Press Alt+F11.
  2. Go To Insert Menu, Click UserForm. Please find the screenshot for the same.
  3. Drag a CommandButton on the Userform from the Toolbox. Please find the below screenshot for the same.
  4. Now double click on the Command Button, which is dragged on the UserForm .
  5. Now you can see the following code in the VBA Editor window.
  6. Private Sub CommandButton1_Click()
    End Sub
  7. Now add the following code to the in between above procedure.
  8. Code:

    Private Sub CommandButton1_Click()
    MsgBox "Hello!"
    End Sub
  9. Now, Press ‘F5’ to run the code. You can see the following Output. It is shown in the following Screen Shot.
  10. output:

Add dynamic CommandButton Control on the UserForm using VBA

Please find the following steps and example code, it will show you how to add dynamic Command Button control on the userform.

  1. Add command button on the userform from the toolbox.
  2. Right click on the command button, click properties
  3. Change the command button caption to ‘Create_CommandButton’
  4. Double click on the command button
  5. Now, it shows the following code.
  6. Private Sub CommandButton1_Click()
    End Sub
  7. Call the below procedure named ‘Add_Dynamic_CommandButton ’ and find the below procedure to run.
  8. Private Sub CommandButton1_Click()
    Call Add_Dynamic_CommandButton 
    End Sub

    Procedure to call in the Command Button :

    Sub Add_Dynamic_CommandButton()
    'Add Dynamic CommandButton and assign it to object 'CmdBtn'
    Set CmdBtn = UserForm2.Controls.Add("Forms.CommandButton.1")
    With CmdBtn
    'Assign CommandButton Name
    CmdBtn.Caption = "Dynamic CommandButton"
    'CommandButton Position
    .Left = 12
    .Top = 10
    .Width = 102
    End With
    End Sub
  9. Now, click F5 to run the macro, click ‘Create_CommandButton’ button to see the result.
  10. You can see the created dynamic Command Button which is shown in the following screen shot.
  11. output:

    Delete CommandButton Control on the UserForm using VBA

    Please find the below code, it will show you how to delete or remove a command button on the UserForm. In the below example, its deleting the command button named ‘New Button’ which is on the UserForm named ‘UserForm4’. We can use Remove method to delete the controls which are created during run time. Controls which are created during design time cannot be deleted using this method. Please find the below example and screen shots for better understand.
    Code 1: Adding CommandButton During Run Time

    Private Sub CommandButton1_Click()
    'We can use Add method to add the new controls on run time
    Set CmdBtn = Me.Controls.Add("Forms.CommandButton.1")
    With CmdBtn
    .Top = 20
    .Left = 20
    .Caption = "New Button"
    .Name = "cmdNew1"
    End With
    MsgBox "New button Added"
    End Sub

    Please find the below screen shot for your reference for the above macro and its output.
    When we click on Add Command Button:

    Code 2: Deleting or Removing CommandButton which is created during run time.

    Private Sub CommandButton2_Click()
    'We can use Remove method to delete the controls which are created during run time
    'Note: Controls which are created on design time can not be deleted using this method
    Me.Controls.Remove ("cmdNew1")
    MsgBox "New button Deleted"
    End Sub

    Please find the below screen shot for your reference for the above macro and its output.
    When we click on Delete Command Button:


    Related Resource External VBA Reference
    Excel VBA Reference Project Management Reference
    VBA Reference:
    Excel Reference:

Related pages

count duplicates excelexcel financial dashboard templatesgantt project planner excelhot to merge cells in excelvba global variablevba excel for eachsimple project plan template excelexcel vba with sheetsvba cell functionthisworkbook vbaexcel consolidate data from multiple sheetsexcel sample worksheetexcel tutorial vbavba checkbox checkedexcel macro developerexcel shortcut keys listexcel unprotect sheet without passwordhow to record macro in excelhow do you combine multiple excel worksheets into oneexcel macro syntaxqtp basics pptvba excel format cellexcel developer tab 2013excel 2010 data validationascending order excelvba outlook.applicationvba filecopyfind duplicate values in excelremove a hyperlink in excelif and isblank excel formulavisual basic conditional statementsrange of cells in excel formulahow to merge fields in excelcheckbox excel vbadelete blank rows in excelremove macros excelhow to unprotect excel workbook without knowing passwordms access vba for loopvba application getopenfilenamecompound if statements excelvba tablems excel advanced filterunprotect vbaexcel vba select multiple rowsdelete duplicate cells in excelhow to combine multiple cells in excelhow to enter macro in excelexcel macro undohow to insert tick mark in excel 2007sas sql interview questionsclose file vbahow to remove duplicates in excel sheetvba outlookvba input message boxif condition in excel 2007how to use the vlookup function in excel 2010close msgbox vbawhat is a vlookupvisual basic conditional statementsvba trim functionunlock protected sheet excelvba programming guideexcel vba option explicitsql interview questions and answers with examplesunix sas tutorialcountifs excel formulasort order sqlname range in excel 2007graph chart in excelsimple if statement in excelexcel macro conditional statementquestions on excel formulasdeleting a pivot tableexcel vba msgbox input