In un foglio di dialogo Excel 5/95 è possibile modificare il valore / contenuto di una raccolta di controlli scorrendo i controlli nella raccolta, ad es. in questo modo: For Each cb In dlg.CheckBoxes.

In Excel 97 o successivo l’oggetto UserForm non raggruppa i controlli allo stesso modo.

Di seguito troverai alcune macro di esempio che mostrano come puoi cambiare il valore / contenuto di diversi controlli UserForm:

Sub ResetAllCheckBoxesInUserForm()

Dim ctrl As Control

For Each ctrl In UserForm1.Controls

If TypeName(ctrl) = "CheckBox" Then

ctrl.Value = False

End If

Next ctrl

End Sub

Sub ResetAllOptionButtonsInUserForm()

Dim ctrl As Control

For Each ctrl In UserForm1.Controls

If TypeName(ctrl) = "OptionButton" Then

ctrl.Value = False

End If

Next ctrl

End Sub

Sub ResetAllTextBoxesInUserForm()

Dim ctrl As Control

For Each ctrl In UserForm1.Controls

If TypeName(ctrl) = "TextBox" Then

ctrl.Text = ""

End If

Next ctrl

End Sub