It refers to the thing that holds the next object/property. In this case, since
the code is under a userform, it refers to that userform.
If you had code behind a worksheet (like worksheet_change), you could refer to
objects that are held on that sheet. (Me.range("a1") would be the same as
worksheets("sheet1").range("a1") if the code was under Sheet1.)
I use it because I'm lazy. When I type the dot after me, I get the intellisense
to help me complete my code.
Instead of having to type:
textbox1.value =
I typed:
me.te
and hit tab.
and got
me.textbox1
I typed .v
and hit tab and got:
me.TextBox1.Value
(if there are lots that start with the same set of letters, you can pick from
the list.)
Saves wear and tear on searching for typos.