You may find that you want to know something about the form that contains the control you wish to use. You could do this by passing a reference to the form, but that will get messy if you are nested 5 levels deep in procedures. A cleaner solution is to use the Container property to get the form. Of course, a control may be contained by other controls. The solution is to walk the chain of containers until you reach the form.
Public Function GetForm(ctr As Control) As Object
Set GetForm = ctr.Container
Do Until TypeOf GetForm Is Form
Set GetForm = GetForm.Container
Loop
End Function
Now, since this function returns an object, you should cast it back to a form for better performance. This is shown below using a control array of nested pictureboxes:
Private Sub picNested_Click(Index As Integer)
Dim frm As Form
Set frm = GetForm(picNested(Index))
MsgBox frm.Name, vbOKOnly, "Name of form"
End Sub