Сортировка записей по числовым значениям, хранящимся в текстовом поле

Числа и строки, хранящиеся в текстовом поле или поле MEMO, сортируются в алфавитном порядке. Таким образом, числа сортируются по отдельным цифрам, входящим в их состав, а не по числовым значениям. Например, значение 11 предшествует 2, а значение 12 предшествует 3, как показано в таблице.

Имя студента

Номер студента

Григорий

1

Мария

10

Станислав

11

Инна

12

Дарья

2

Екатерина

3

Дмитрий

4

Инна

5


Чтобы сортировка чисел выполнялась по числовым значениям, а не в алфавитном порядке, выполните одно из следующих действий:

  • Если поле содержит только числовые значения, измените тип данных для поля на Число или Денежный.

  • Воспользуйтесь описанной ниже процедурой, если:

    • поле содержит только числовые значения, но менять тип данных для него нежелательно;

    • поле содержит числовые и строковые значения, но при сортировке строковые значения следует игнорировать.


Для получения числового значения для числа, сохраненного в виде текста, в этой процедуре используется функция Val. Кроме того, в выражении применяется функция IIf для обработки пустых значений в поле сортировки.

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

  2. Введите выражение Expr1: IIf([Имя_поля] Is Null, 0, Val([Имя_поля])) в строку Поле первого столбца.

    Функция IIf проверяет, является ли значение пустым; в этом случае оно приравнивается к 0. В противном случае функция IIf вызывает функцию Val для получения числового значения.

  3. В ячейке Сортировка выберите значение По возрастанию или По убыванию.

    При сортировке по возрастанию запись с наименьшим значением отображается первой, а запись с наибольшим значением — последней. При сортировке по убыванию используется обратный порядок.

  4. На вкладке Начальная страница в группе Сортировка и фильтрация щелкните Переключить фильтр.

Если описанная выше процедура по каким-либо причинам не подходит, можно применить другой способ, не нарушая структуру таблицы. Он состоит в том, что числа с меньшим количеством цифр дополняются нулями. Например, перед выполнением сортировки необходимо изменить значения 11, 2, 2000 и 3 на 0011, 0002, 2000 и 0003.

В начало страницы

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

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

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

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

×