What is a UserForm in VBA?


A UserForm is a tool for entering data into your worksheet in a controlled manner.

You can control what cells the user enters the data in, and the type of data that gets entered into the cells.

You can also validate the data entered on the form before it actually gets entered into the worksheet.

A UserForm serves as a buffer layer between the user and the worksheet.

You can have a UserForm appear as soon as the workbook is opened, so the user has to immediately interact with it.

In the following example, the UserForm appears whenever the worksheet is activated:

Private Sub Worksheet_Activate()
    UserForm1.Show
End Sub

…and here we are entering so simple information into it:

Private Sub btnOK_Click()
    Range("A2").Value = Me.txtFirstName
    Range("B2").Value = Me.txtLastName
End Sub

Let me know if you have any questions.