есть форма для формирования условий sql запроса к бд. три (для примера) комбо с двумя колонками, первая (id) - скрыта :
Скрытый текст
cboType cboClass cboCategory
BoundColumn 1 ColumnCount 2 ColumnWidths 0;100pt RowSource (данные из бд, но в примере - просто диапазоны на листе)
type (idType; Type), class (idClass; Class), category(idCategory; category)
и есть еще один комбо cboFilterSet, который содержит наиболее частые значения фильтров - FilterSets, которые можно было запомнить для быстрого выбора наиболее частых комбинаций всех фильтров.
Каждому набору фильтров (set) присвоено имя, а соответствующие id записаны в умную таблицу на листе. tblFilterSets
Скрытый текст
FilterSet
idType
idClass
IdCat
set1
1
4
2
set2
2
8
6
set3
5
5
7
По выбору сета из комбо надо подставить соответствующие значения id в комбо фильтров
и вот тут что-то не получается - Type mismatch
Код
Private Sub cboFilterSet_Change()
Dim tbl As ListObject
Set tbl = ActiveSheet.ListObjects("tblFilterSet")
If Me.cboFilterSet.ListIndex <> -1 Then
With tbl.ListRows(cboFilterSet.ListIndex + 1).Range
Me.cboType.Value = .Cells(2)
Me.cboClass.Value = .Cells(3)
Me.cboCategory.Value = .Cells(4)
End With
End If
End Sub