Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/32: Рейтинг темы: голосов - 32, средняя оценка - 4.69
Маринка

Сортировка таблицы БД по одному из полей (через форму Access)

08.08.2010, 15:37. Показов 6860. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите мне еще с такой просьбой...
Я хочу добавить кнопку 'Сортировка', на свою форму (через нее осуществляются все операции с таблицей - 'Таблица1', т.е. пишутся записи, стираются, читаются и т.д.)
Подскажите, какой VB код кнопки 'Сортировка' надо указать (через вкладку - 'нажатие кнопки'), чтобы после ее нажатия произошла сортировка всей таблицы, по полю - 'Фамилия' (по возрастанию, т.е. начиная с буквы 'А', или по убыванию - с буквы 'Я')...
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.08.2010, 15:37
Ответы с готовыми решениями:

Сортировка таблицы DataTable по одному из полей
Таблица получается путем запроса из бд. Нужно отсортировать ее по какому нибудь из полей. Подскажите наиболее оптимальные пути решения...

Ввод через форму сразу 2 полей из главной таблицы
Такая ситуация:ввожу через форму поля в подчиненную таблицу.В одном из полей выбираю данные из списка из главной таблицы.Как можно сделать...

как создать запрос на заполнение в полей таблицы Access через delphi
как создать запрос на заполнение в полей таблицы Access через delphi, при помощи Editов

12
5 / 5 / 0
Регистрация: 03.06.2010
Сообщений: 242
08.08.2010, 15:58
По возрастанию
Visual Basic
1
Me.OrderBy = 'Фамилия'
По убыванию
Visual Basic
1
Me.OrderBy = 'Фамилия desc'
0
Маринка
08.08.2010, 16:12
Я указала следующий код кнопки 'Сортировка':

Visual Basic
1
2
3
4
5
6
Private Sub Сортировка_Click()
Set table = CurrentDb.OpenRecordset('Таблица1', dbOpenDynaset)
  With table
    Me.OrderBy = 'Фамилия'
End With
End Sub
Что то не получилось...
Может быть потому, что у меня таблица 'Таблица1', отображается на 'основной' форме ('Main') (там где находится кнопка 'Сортировка'), через подиненную форму 'Main-Sub'. Можно ли в таком случае, использовать эти команды (Me.OrderBy)
Маринка
08.08.2010, 16:20
На форме 'Main' я, через указатель мыши и выпадающее меню - правым кликом (т.е. - в 'ручном' режиме), могу это делать, сортирую по любому полю. Хотелось бы, несколько 'облагородить' эту функцию. Передав все 'заботы' кнопке - 'Сортировка'...
5 / 5 / 0
Регистрация: 03.06.2010
Сообщений: 242
08.08.2010, 16:36
Если кнопка на форме, в которой сортируются данные, пишите
(по возрастанию)
Visual Basic
1
2
Me.OrderByOn = True
Me.OrderBy = 'Фамилия'
(по убыванию)
Visual Basic
1
2
Me.OrderByOn = True
Me.OrderBy = 'Фамилия desc'
И все

Если кнопка на главной форме, а сортируете в подчиненной, то
Visual Basic
1
2
Me.ИмяПодчиненнойФормы.Form.OrderByOn = True
Me.ИмяПодчиненнойФормы.Form.OrderBy = 'Фамилия desc'
Если хотите чтобы сортировка менялась на отратную при нажатии на кнопку, то

Visual Basic
1
2
3
4
5
6
7
8
9
Static y as boolean
y=not y
if y then
  Me.OrderByOn = True
  Me.OrderBy = 'Фамилия'
else
  Me.OrderByOn = True
  Me.OrderBy = 'Фамилия desc'
end if
0
Маринка
08.08.2010, 17:33
Ах... Не получается что-то...
Вы могли бы привести полный код кнопки 'Сортировка', т.е. исходя из следующих данных:
1. Таблица базы данных - 'Таблица1'
2. Поле таблицы (критерий сортировки) - 'Фамилия'
2. Подчиненная форма - 'Main_sub'
3. Главная форма 'Main'
5 / 5 / 0
Регистрация: 03.06.2010
Сообщений: 242
08.08.2010, 17:55
Данные нужно сортировать в главной или подчиненной форме
0
5 / 5 / 0
Регистрация: 03.06.2010
Сообщений: 242
08.08.2010, 18:03
Если сортируем в подчиненной

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Сортировка_Click()
Static y As Boolean
y = Not y
If y Then
Me.Main_sub.Form.OrderByOn = True
Me.Main_sub.Form.OrderBy = 'Фамилия'
Else
Me.Main_sub.Form.OrderByOn = True
Me.Main_sub.Form.OrderBy = 'Фамилия desc'
End If
End Sub
Если сортируем в главной
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Сортировка_Click()
Static y As Boolean
y = Not y
If y Then
Me.OrderByOn = True
Me.OrderBy = 'Фамилия'
Else
Me.OrderByOn = True
Me.OrderBy = 'Фамилия desc'
End If
End Sub
0
Маринка
09.08.2010, 09:42
Завела в программу весь код.
У меня, почему то, не прошел режим контрольной компиляции. Выдается ошибка: 'Method or data member not found'. Выделяется синим цветом, часть выражения (Me.Main_Sub.Form.OrderByOn = True), а именно - .Form
Может какие настройки в самом Access мной не сделаны...???
Маринка
09.08.2010, 09:49
Попробовала второй вариант.
Компиляция идет без ошибок. Но все равно, сортировки записей по надатию кнопки 'Сортировка' не происходит. Хотя, в 'ручную' (через вызов субменю Access - правым кликом - на подчиненной форме (там где отображается вся таблица), выполняется...
Маринка
09.08.2010, 09:59
Заметила, что 'второй' вариант срабатывает однократно, после того, как отработает команда 'Фильтр' вспомогательного субменю Аccess (вызов правым кликом). Лишь потом, после того, как выполнишь команду субменю 'Удалить фильтр' и снова появляются все записи таблицы, то по нажатии кнопки 'Сорировка' происходит выполнение команды. И все..., т.е. потом эта кнопка больше не 'работает'... (если только опять не вкл/выкл фильтр)...
Маринка
09.08.2010, 10:13
Если дадите e-mail, я бы отправила вам этот пример для более конкретной проверки...
5 / 5 / 0
Регистрация: 03.06.2010
Сообщений: 242
09.08.2010, 11:20
PostRoma@Rambler.ru
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.08.2010, 11:20
Помогаю со студенческими работами здесь

Сортировка по одному из полей
Здравствуйте! Подскажите, пожалуйста, как сделать сортировку по одному из полей. Никак в голову не приходит..:-| #include...

Сортировка по одному из полей класса
Всем привет. Я сделал вот такой список. Вопрос как мне его отсортировать, к примеру, по Id и по Name? #include <iostream> ...

Сортировка list по одному из полей
Помогите пожалуйста! У меня есть структура, содержащая несколько полей (типа int, char, char). Я считываю из 2-го файла в эту структуру,...

Сортировка по одному из полей в структуре
Задана структуру с именем info, содержащую номер, имя и фамилию, а также дату рождения человека. Надо отсортировать по возрастанию номера...

Сортировка коллекции по одному из полей
Есть коллекция. public List<worker> Workers = new List<worker>(); worker содержит поля: public worker(string surname, string...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru