Option Explicit
Private Sub UserForm_Click()
Dim c As Control, t() As Variant, i As Byte
For Each c In Me.Controls
If TypeName(c) = "Frame" Then i = i + 1
Next c
ReDim t(0 To i - 1)
For Each c In Me.Controls
If TypeName(c) = "Frame" Then t(c.TabIndex) = c.Name
Next c
For i = 0 To UBound(t)
MsgBox t(i)
Next i
End Sub