Ändra värde/innehåll för flera UserForm-kontroller med VBA i Microsoft Excel

Anonim

I ett Excel 5/95 dialogblad är det möjligt att ändra värdet/innehållet i en samling kontroller med
slinga igenom kontrollerna i samlingen, t.ex. så här: För varje cb i dlg.CheckBoxes.
I Excel 97 eller senare grupperar inte UserForm-objektet kontrollerna på samma sätt.
Nedan hittar du några exempelmakron som visar hur
du kan ändra värdet/innehållet i flera UserForm-kontroller:

Sub ResetAllCheckBoxesInUserForm () Dim ctrl som kontroll för varje ctrl i UserForm1.Controls If TypeName (ctrl) = "CheckBox" Sedan ctrl.Value = False End If Next ctrl End Sub Sub ResetAllOptionButtonsInUserForm () Dim ctrl Som Control för varje ctrl I UserForm1. Kontroller Om TypeName (ctrl) = "OptionButton" Sedan 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