(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Сортировка через контекстное меню

Поиск по критериям - лишь половина задачи. Результаты поиска надо отсортировать! Можно повесить сортировку на кнопку, но если полей много, а места мало?
 
1. Не знаю как вы, а я выдаю результаты поиска, подменяя источник записей ListBox. Данный элемент мне нравится гораздо больше подчиненной формы. Почему? Считайте это прихотью программиста.))

2. Добавим в модуль (не формы, а просто модуль).

Public sqlOldList As String

Public Function SortBy(fld As String, Lst As ListBox)
Dim sql As String

sqlOldList = Trim(sqlOldList)

If Right(sqlOldList, 1) = ";" Then
    sql = Left(sqlOldList, Len(sqlOldList) - 1) & " ORDER BY " & fld
Else
    sql = sqlOldList & " ORDER BY " & fld
End If
Lst.RowSource = sql
'MsgBox sql
End Function

Переменная нам нужна для хранения источника данных.

3. На кнопке "Найти" у нас поиск. В конце, как передали в элемент измененный источник, в sqlOldList передаем его же, но без сортировки!!!

4. На загрузку формы вешаем передачу текущего источника в sqlOldList.

ГЛАВНОЕ, чтобы в исходном источнике (на момент загрузки) не было сортировки вообще! Т.е. в первый момент в списке видны неотсортированные данные.

5. Добавляем контекстное меню, которое впоследствии повесим на список. В элементах этого меню в качестве функции пишем что-то вроде: =SortBy("Table.[Field] DESC", Forms!MyForm!MyListBox)

6. Наслаждаемся результатом.

Пример работы с контекстным меню 

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 18.10.2007 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Office 365 для Дома 32-bit/x64. 5 ПК/Mac + 5 Планшетов + 5 Телефонов. Подписка на 1 год.
Microsoft Office 365 Бизнес. Подписка на 1 рабочее место на 1 год
Microsoft Office для дома и учебы 2019 (лицензия ESD)
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год.
Microsoft 365 Business Basic (corporate)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Компьютерные книги. Рецензии и отзывы
Adobe Photoshop: алхимия дизайна
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100