Ваш пример кода содержит здесь логическую ошибку ...
If Me.List0.Selected(x) > 0 Then
DoCmd.RunSQL "Insert ..."
End If
Проблема в том, что когда x
является индексом строки для одного из выбранных элементов списка, Me.List0.Selected(x)
возвращает True, чтоэто -1.А поскольку -1 не больше нуля, условие If ... Then
оценивается как False, поэтому строка не вставляется.
Изучите эту таблицу "четверти".Он должен быть пустым, потому что вы удалили все его строки в начале процедуры и не добавили никаких строк после.
Измените эту строку на эту ...
If Me.List0.Selected(x) = True Then
Затем снова запустите код.Если запрос «Квартал» по-прежнему не открывается фильтрованным, как вы ожидаете, добавьте SQL-запрос в свой вопрос и опишите, чем результат запроса отличается от того, что вы хотите.