У меня есть форма доступа с 5 выпадающими списками, мне нужно проверить, уникальны ли значения раскрывающихся списков, прежде чем я одобрю форму. Я могу перебрать все элементы формы, но я хочу, чтобы иметь возможность перебирать только через выпадающие:vba - looping через определенные элементы управления формы
----------------------------------------------------------------------
|Id1 [dropdown values] Id2 [Dropdown values] Id3 [Dropdown Values] |
| |
| CollectionTask [Another dropdown] |
| []This is a checkbox |
| [Approve Button] [clear myForm btn] |
----------------------------------------------------------------------
'iterating over the form elements
On Error Resume Next
Dim ctl As Control
For Each ctl In Me.Controls
'do something only for dropdown controls of form
Next
Вместо Перебор всего, я хочу перебрать только типы раскрывающихся. Я чувствую, что должен быть способ сделать это. Я работаю над этим, используя технику ниже, но это много кода.
'this code will do the trick but that means I will have to write a condition for every id
'which for me is lots of code (not being lazy but I think iterating over the form elements will be more efficient
If (id1.Value = id2.Value) Or (id1.Value = id3.Value) Or (id1.Value = id4.Value) then
Msgbox "make sure you are not duplicating ids"
End if