My way
Dim objControl as Object
Dim i As Long
Dim Arr
For each objControl in Userform.Controls
objControl.Visible = False
Next
'Use array for speed
Arr = Intersect(Sheets("Controls").UsedRange, Range("A:A")).Value
For 1 = Lbound(Arr, 2) to Ubound(Arr, 2)
'Use Error for typos, etc.
On Error Resume Next
UserForm.Controls(Arr(1, i)).Visible = True
Error = 0
Next
Your way
For Each objControl In UserForm1.Controls
objControl.Visible = Not(Application.Match(objControl.Name, Sheets("Controls").Columns(1), 0) = "#N/A")
Next objControl