Сортировка записей в пользовательском порядке

Важно :  Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

В некоторых случаях требуется сортировать значения не в алфавитном или цифровом, а в особом порядке (который также называется пользовательским или логическим). Например, при сортировке дней недели имеет смысл использовать такой порядок сортировки, при котором первым идет понедельник, а не воскресенье, как при сортировке в алфавитном порядке. Можно сортировать данные в режиме таблицы для таблицы или отчета или в режиме формы для формы.

Предполагаемое действие:

Сортировка небольшой конечное число значений полей уникальные

Сортировка большого количества уникальных полей значений

Сортировка небольшого количества уникальных значений поля

Эта процедура включает написание выражения, в котором для сортировки должностей сотрудников используется функция IIf.

Создайте таблицу с тремя полями — «Должность», «Имя» и «Фамилия». В поле «Должность» введите следующие значения для четырех записей:

  • Внутренний координатор по продажам

  • Менеджер по сбыту

  • Торговый представитель

  • Заместитель директора по сбыту

В полях четырех записей «Фамилия» и «Имя» введите произвольные имена.

  1. Теперь откройте таблицу в режиме таблицы.

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

  3. Добавьте в сетку нужные поля, например «Имя», «Фамилия» и «Должность».

  4. Щелкните правой кнопкой мыши строку Поле в первом пустом столбце, выберите команду Масштаб и введите следующее выражение:

    IIf ([Название] = «Президент, продажи»; 1, IIf ([название] = «Менеджер по продажам», 2, IIf ([название] = «Торговый представитель», 3, IIf ([название] = «внутри координатор продаж», 4, 5)))

    «Должность» — имя поля, в котором содержатся значения для сортировки. Значения, заключенные в кавычки, — это отдельные значения, которые хранятся в этом поле. Числовое значение представляет ранг. В приведенном выше выражении для четырех различных должностей указан ранг от 1 до 4; всем остальным должностям присваивается ранг 5. При сортировке ранг 5 присваивается всем должностям, которые не указаны в выражении.

  5. В строке Сортировка выберите вариант По возрастанию для столбца, содержащего выражение.

  6. на вкладке Главная в группе Сортировка и фильтр нажмите кнопку Переключить фильтр.

    Функция IIf возвращает числовое значение, соответствующее значению поля «Должность». Например, если в поле «Должность» содержится значение Менеджер по сбыту, ему назначается число 2. Если в поле «Должность» содержится значение, которое не является аргументом функции, например, Координатор района, ему назначается число 5. После этого выполняется сортировка чисел по возрастанию.

К началу страницы

Сортировка большого количества уникальных значений поля

Если требуется выполнить сортировку большого количества значений, удобнее создать таблицу подстановок.

Предположим, что в таблице «Сотрудники» указано более 50 различных должностей. Сначала необходимо создать таблицу подстановок и настроить существующую таблицу на подстановку значений из новой таблицы. Затем следует связать эти две таблицы и создать запрос.

Создание таблицы подстановок и изменение существующей таблицы

  1. Создайте новую таблицу подстановок, в которой будут храниться должности. Присвойте ей имя таблицаДолжностей и укажите для полей типы данных, указанные в скобках, как показано в следующей таблице.

TitleID
("Счетчик")

Название
(текст)

1

Заместитель директора по сбыту

2

Менеджер по сбыту

15

Торговый представитель

16

Внутренний координатор по продажам

  1. Используйте поле «КодДолжности» в качестве первичного ключа.

  2. Измените таблицу «Сотрудники» таким образом, чтобы в нее подставлялись значения таблицы «таблицаДолжностей».

    • В режиме конструктора измените имя поля « Название » для TitleID.

    • В столбце Тип данных измените значение Тип данных на Число.

  3. На вкладке Общие в группе Свойства поля измените значение поля Размер поля на Длинное целое.

  4. Сохраните таблицу и пропустите предупреждение о потере данных.

  5. Переключитесь в режим таблицы.

  6. Заполните значения в столбце «Должность» соответствующими значениями из поля «КодДолжности».

    Например для которых содержит значение название менеджер по продажам записей, введите 2. Торговый представитель введите 3.

  7. Сохраните и закройте таблицу.

Связывание двух таблиц

  1. На вкладке Работа с базами данных в группе Показать или скрыть выберите пункт Отношения.

  2. На вкладке Конструктор в группе Показать или скрыть нажмите кнопку Имена таблиц.

  3. Выделите таблицы таблицаДолжностей и Сотрудники и нажмите кнопку Добавить, чтобы добавить их в окно «Связи». Закройте диалоговое окно Добавление таблицы.

  4. Перетащите поле «КодДолжности» из таблицы «таблицаДолжностей» в поле «КодДолжности» в таблице «Сотрудники».

    Будет открыто диалоговое окно Изменение связей.

  5. Убедитесь, что в обоих столбцах отображается одно имя поля КодДолжности и что в поле Тип отношения указано значение один-ко-многим. При необходимости имена полей можно изменить.

  6. Установите флажок Обеспечение целостности данных.

  7. Для создания связи нажмите кнопку Создать.

    Диалоговое окно Изменение связей закроется; изменения будут сохранены.

  8. Закройте вкладку Связи.

Создание запроса

  1. На вкладке Создание в группе Другие нажмите кнопку Конструктор запросов.

  2. В диалоговом окне Добавить таблицу перейдите на вкладку Таблица, дважды щелкните пункт Сотрудники, а затем дважды щелкните пункт таблицаДолжностей.

  3. Закройте диалоговое окно Добавить таблицу.

  4. В бланк запроса добавьте поля «КодСотрудника», «Фамилия» и «Имя» из таблицы «Сотрудники», а также поле «Должность» из таблицы «таблицаДолжностей».

  5. Переключитесь в режим таблицы.

К началу страницы

Примечание : Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×