Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5

Сортировка поля формы по второму столбцу выпадающего списка

15.09.2025, 11:17. Показов 841. Ответов 10

Студворк — интернет-сервис помощи студентам
Есть форма в табличном представлении. Она состоит из множества (больше 30) полей с выпадающим списком. Сами списки имеют два столбца: код и значение. Ширина столбцов задана: 0; сколько-то там сантиметров. В результате первый столбец скрывается, а показывается только второй. Почему так сделано, не спрашивайте. Форма универсальная и к ней загружается произвольное количество столбцов, динамически в момент открытия выбираются источники списков для каждого поля, выбирается, какие из полей показывать, а какие скрыть. Поэтому было сделано так...
Ну и вот хотелось бы добавить опять же универсальную кнопку сортировки, которая сортировала бы поля не по значению в них (код), а по подстановочному второму столбцу выпадающего списка.
Видится мне, что надо формировать рекордсет с набором значений списка, сортировать его по второму столбцу, а потом каким-то образом этот порядок отправлять в форму. Но тут у меня затык. Есть идеи?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.09.2025, 11:17
Ответы с готовыми решениями:

Сортировка подчиненной формы по второму столбцу поля со списком
Доброго времени суток всем! В подчиненной форме один из столцов - поле со списком (2 столбца:...

Обновление выпадающего списка в форме в зависимости от выпадающего списка выше
Есть 3 таблицы (1,2,3) Первая и вторая связаны между собой через таблицу 3. Есть 3 выпадающих...

Конкретные значения из выпадающего списка на форме в зависимости от значения другого выпадающего списка
Добрый день! Помогите решить вопрос: есть база данных (прилагается) и в ней на форме хочу, чтобы во...

10
 Аватар для VinniPuh
9119 / 6108 / 591
Регистрация: 27.03.2013
Сообщений: 19,936
15.09.2025, 17:33
amd48, Не совсем понял задумку, но кажись что то похожее нашел в своих закромах.
Возможно поможет и сможете прикрутить к своему примеру.
Вложения
Тип файла: zip Плавающие Кнопки Сортировки (от-mobile).zip (84.2 Кб, 24 просмотров)
0
ᴁ ©
Эксперт MS Access
 Аватар для АЕ
4136 / 2430 / 503
Регистрация: 13.12.2016
Сообщений: 8,268
Записей в блоге: 5
15.09.2025, 20:44
Цитата Сообщение от amd48 Посмотреть сообщение
в момент открытия выбираются источники списков для каждого поля, выбирается, какие из полей показывать, а какие скрыть.
ну и добавьте сортировку в источнике списков в момент открытия. Что мешает? +1 оператор к источнику столбцов.
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5
16.09.2025, 09:09  [ТС]
Цитата Сообщение от VinniPuh Посмотреть сообщение
но кажись что то похожее нашел в своих закромах.
В предлагаемом решении показано определение текущего поля и настройки кнопок сортировки под это поле. Это для меня не проблема. Я и кнопки собираюсь размещать на риббоне.
Моя проблема в том, что сортировать я хочу не обычные поля, а списки с подстановкой (претендент в соответствующую коллекцию в закреплённой теме )
У меня появилась идея создать свободное вычисляемое поле, которое по нажатию кнопки сортировки получает источник "=" & [выбранное поле].column(1)
Но оказалось, что в форме по вычисляемым полям нельзя делать ни фильтров ни сортировок. Такое возможно только с формой, основанной на запросе. А у меня форма для ввода и должна основываться на таблице. Получается, что это сортировочное поле надо добавлять к таблице и динамически заполнять данными сортируемого поля. Немного пугающе, но тут надо определиться с приоритетами Удобная сортировка с избыточным полем или без сортировки.
Сейчас попробую сделать прототип с этой идеей для демонстрации
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5
16.09.2025, 11:11  [ТС]
Итак, вроде сделал
есть риббон с вкладкой сортировка
fMain - основная форма. fft - подчинённая, табличная.
В заголовке формы из списка выбираем "направление": север, юг и т.д.. Оно фильтрует нижнюю таблицу.
В таблице ставим курсор на любом из столбцов, у которых в начале названия стоит буква "n". Это те самые динамические столбцы, которые могут менять источники, порядок отображения и всё такое. Но здесь этот механизм не показан. Просто три поля. Есть поле sort, в которое по кнопке сортировки копируются наименования из соответствующей таблицы, которая привязана в данный момент к текущему полю-n. И сразу после этого применяется сортировка по полю sort.
Вложения
Тип файла: zip сортировка по полю с выпадающим списком.zip (101.3 Кб, 13 просмотров)
0
Эксперт MS Access
 Аватар для Eugene-LS
11756 / 5818 / 1490
Регистрация: 05.10.2016
Сообщений: 16,392
16.09.2025, 11:29
Цитата Сообщение от amd48 Посмотреть сообщение
...добавить опять же универсальную кнопку сортировки, которая сортировала бы поля не по значению в них (код), а по подстановочному второму столбцу выпадающего списка
...
... сортировать я хочу не обычные поля, а списки с подстановкой
И в чём проблема?
У запросов есть: ORDER BY
У полей со списком есть: RowSource
...
Одно + второе - получим:

Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub CommandButton_Click()
Dim sVal$
 
' Запрос с сортировкой:
    sVal = "SELECT [Код], [Значение] FROM [Ваша Таблица] ORDER BY [Значение];"
    
' Устанавливаем как новый источник строк для ComboBox с сортировкой по полю [Значение]:
    Me.ComboToSort.RowSource = sVal '
    
End Sub
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5
16.09.2025, 11:58  [ТС]
Цитата Сообщение от Eugene-LS Посмотреть сообщение
И в чём проблема?
В том, что мне надо сортировать не выпадающий список, а поле, на котором этот список выпадает. Поле основано на первом столбце списка - коде. Просто числа, которые пользователю ничего не говорят и ему их даже видеть не надо. А второй столбец списка - это русские наименование, которое и имеет значение при сортировке. Вопщем, я это уже даже в свой проект перенёс (просто добавил ещё одно поле для сортировки и две процедуры для кнопок сортировки туда и обратно)
Как всегда, на мои странные вопросы на этом форуме отвечаю я сам Но, может, кому пригодится эта идея...
0
Эксперт MS Access
 Аватар для Eugene-LS
11756 / 5818 / 1490
Регистрация: 05.10.2016
Сообщений: 16,392
16.09.2025, 12:09
Цитата Сообщение от amd48 Посмотреть сообщение
не выпадающий список, а поле, на котором этот список выпадает
Ну вы так спрашиваете затейливо - что трудно понять чего вы хотите.

Идея : получает источник "=" & [выбранное поле].column(1)
А не проще ли добавить (на лету) в источник данных формы поле сортировки = Значения выбранного поля и сортировать по нему. Должно быть проще и быстрее.
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5
16.09.2025, 13:26  [ТС]
Цитата Сообщение от Eugene-LS Посмотреть сообщение
А не проще ли добавить (на лету) в источник данных формы поле сортировки = Значения выбранного поля
Если "на лету" это делать в свободном поле, в котором будет такая формула равенства, то по этому полю акцесс не позволит выполнять сортировку или фильтр. Оно будет пригодно только для просмотра. Делать с ним ничего нельзя. Я про эту проблему выше писал
0
Эксперт MS Access
 Аватар для Eugene-LS
11756 / 5818 / 1490
Регистрация: 05.10.2016
Сообщений: 16,392
16.09.2025, 13:34
Цитата Сообщение от amd48 Посмотреть сообщение
акцесс не позволит выполнять сортировку или фильтр
Я написал: ... в источник данных формы ...
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,266
Записей в блоге: 5
16.09.2025, 13:46  [ТС]
Цитата Сообщение от Eugene-LS Посмотреть сообщение
в источник данных формы
Тогда это делает форму только для чтения. В ней невозможно будет вводить данные. А она изначально предназначена для ввода
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.09.2025, 13:46
Помогаю со студенческими работами здесь

Смена поля выпадающего списка, в зависимости от другого поля со списком
Добрый день, нужна ваша помощь. На главной форме есть поле со списком Контрагент, в справочнике...

Изменение выпадающего списка в зависимости от значения поля формы
Добрый день, уважаемые коллеги. Сделал небольшую БД для удобства ведения метрологического учета...

Изменение выпадающего списка в столбце в зависимости от выбора в предыдущем
Здравствуйте. В базе данных в таблице "Наименование" необходимо сделать так, чтобы в столбце...

Изменение содержимого простого списка при апдейте выпадающего списка
Добрый день! Суть моей просьбы о помощи такова: На форме (пока) расположен выпадающий список с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru