Возможности !SEMTools

ПОСЛЕД

ПОСЛЕД - Функция в Excel, пример
Раздел функцийМатематические
Название на английскомSEQUENCE
ВолатильностьНе волатильная
Похожие функцииСТРОКА, СТОЛБЕЦ, ДВССЫЛ

Функция ПОСЛЕД доступна в современных версиях Excel, включая Excel для Microsoft 365, Excel 2021 и Excel 2024. Она является частью семейства функций динамических массивов, которые принципиально изменили подход к работе с массивами данных в Excel. Динамические массивы автоматически расширяются и сжимаются, подстраиваясь под объём возвращаемых данных, что устраняет необходимость ручного управления размером выходных диапазонов.

Что делает функция ПОСЛЕД

Функция ПОСЛЕД предназначена для генерации последовательностей чисел в виде динамического массива. Её основная задача — возвращать упорядоченный набор чисел, который автоматически заполняет указанный диапазон ячеек. В отличие от статических методов создания последовательностей, результат работы функции динамически обновляется при изменении исходных параметров или данных в таблице.

В предыдущих версиях Excel для вывода последовательностей чисел использовались функции СТРОКА, СТОЛБЕЦ и ДВССЫЛ в формулах массива.

Синтаксис, аргументы функции ПОСЛЕД

Синтаксис функции ПОСЛЕД довольно непрост. У неё 4 числовых аргумента:

=ПОСЛЕД(строки;[столбцы];[начало];[шаг])

При этом обязательный только первый аргумент (строки), остальные аргументы можно не использовать, их значение уже задано по умолчанию как 1 (самый ходовой случай).

При вводе функции сочетанием клавиш Shift + F3 через окно вставка функции можно ознакомиться со списком аргументов и ввести их в соответствующие поля:

Функция ПОСЛЕД - аргументы

Расскажу об аргументах подробнее.

Обязательный аргумент: строки

Первый аргумент (строки) определяет количество строк, которые будет занимать результирующая последовательность. Это единственный обязательный аргумент функции. Например, формула =ПОСЛЕД(5) возвращает массив чисел от 1 до 5, расположенных в пяти последовательных ячейках одного столбца.

Необязательный аргумент: столбцы

Аргумент столбцы задаёт количество столбцов для выходного массива. Если аргумент не указан, по умолчанию используется значение 1. При указании обоих аргументов создаётся двумерный массив. Например, =ПОСЛЕД(3;3) создаёт матрицу 3×3, заполняя числами от 1 до 9. По умолчанию заполнение происходит слева направо, затем сверху вниз.

Необязательный аргумент: начало

Аргумент начало определяет первое число в последовательности. Если аргумент опущен, последовательность начинается с 1. Аргумент поддерживает отрицательные и дробные значения. Например, =ПОСЛЕД(3;1;5) вернёт массив [5; 6; 7].

Необязательный аргумент: шаг

Аргумент шаг задаёт разность между соседними элементами последовательности. По умолчанию используется шаг 1. Как и начальное значение, шаг может быть отрицательным (для убывающих последовательностей) или дробным. Например,

=ПОСЛЕД(4;1;0;2.5)

создаст последовательность [0; 2,5; 5; 7,5].

Направление заполнения и функция ТРАНСП

По умолчанию функция ПОСЛЕД заполняет массив по строкам. Для изменения направления заполнения используется функция ТРАНСП (TRANSPOSE), которая меняет ориентацию массива. Например,

=ТРАНСП(ПОСЛЕД(3;3))

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

Преимущества функции ПОСЛЕД

Функция предлагает ряд преимуществ в сравнении с традиционными техниками, способами организации данных и функциями. Рассмотрим несколько примеров.

ПОСЛЕД vs Статические константные массивы

Статические массивы, записываемые в формате {1;2;3;4;5}, являются неизменяемыми константами. Их размер и значения фиксированы на момент создания и не могут быть пересчитаны на основе других ячеек или формул. Для изменения такого массива требуется его полное переопределение.

ПОСЛЕД создает вычисляемые массивы, параметры которых могут зависеть от других ячеек таблицы. Например, =ПОСЛЕД(A1) будет автоматически менять размер при изменении значения в ячейке A1. Это позволяет создавать адаптивные структуры данных, недоступные при использовании константных массивов.

ПОСЛЕД vs Комбинации функций СТРОКА/СТОЛБЕЦ

Традиционно для создания последовательностей использовались комбинации функций СТРОКА (ROW) и СТОЛБЕЦ (COLUMN). Например, =СТРОКА(A1) при протягивании дает последовательность 1, 2, 3… Для сложных случаев требовались формулы вида =СТРОКА(A1)-СТРОКА(A$1), что усложняло чтение и редактирование.

Функция ПОСЛЕД предоставляет прямое и интуитивно понятное решение для тех же задач. Формула =ПОСЛЕД(5) заменяет собой протягивание пяти ячеек с формулами СТРОКА. Для создания двумерных массивов разница еще более существенна: одна формула ПОСЛЕД заменяет сложные матричные конструкции на основе СТРОКА/СТОЛБЕЦ.

Ключевое преимущество ПОСЛЕД заключается в возможности создания завершенных массивов “одним выстрелом” без необходимости заполнения диапазона формулами. Это особенно важно при построении сложных динамических отчетов и дашбордов.

Примеры комбинаций с другими функциями

Вывод самих последовательностей чисел на лист не так интересен, как их использование вместе с другими функциями, у которых есть числовые аргументы. И это не обязательно математические или статистические функции. Текстовые функции и функции даты-времени тоже часто принимают на вход числовые аргументы. А значит, и последовательности чисел.

Примеры использования с текстовыми функциями:

Как создать алфавит в Excel

Как удалить знаки препинания в Excel (пунктуацию)

Как найти кириллицу или латиницу в тексте.

Рассмотрим и другие примеры прямо в этой статье.

Динамический нумерованный список со СЧЁТЗ

Столбец нумерации обычно создают, протягивая значения вручную. Но ручное протягивание создает статические значения, которые не адаптируются к изменениям в структуре таблицы. При удалении строки в таком списке возникает разрыв нумерации (1, 2, 4, 5…), требующий ручного исправления. Добавление новых данных также требует повторно протягивать список.

Функция ПОСЛЕД генерирует динамический массив, который автоматически пересчитывается при любых изменениях. В комбинации с функцией СЧЁТЗ можно построить систему нумерации, адаптирующуюся к изменению количества записей:

=ПОСЛЕД(СЧЁТЗ(B:B);1;1;1)

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

Комбинации ПОСЛЕД с ФИЛЬТР, НАИБОЛЬШИЙ

С ФИЛЬТР (FILTER) функция ПОСЛЕД позволяет реализовать выборку каждого N-го элемента:

=ФИЛЬТР(A:A;ОСТАТ(ПОСЛЕД(ЧСТРОК(A:A));N)=0)

Для анализа данных полезна комбинация с НАИБОЛЬШИЙ. Например,

=НАИБОЛЬШИЙ(A:A;ПОСЛЕД(3))

возвращает три наибольших значения из диапазона. Такой подход упрощает создание рейтингов и прочих ранжированных списков без изменения исходных данных.

ВПР + ПОСЛЕД для вывода нескольких столбцов значений

Функция ПОСЛЕД решает классическое ограничение ВПР, позволяя извлекать несколько столбцов одновременно. Формула

=ВПР(A2;$C$2:$F$100;ПОСЛЕД(1;3;2;1);ЛОЖЬ)

возвращает сразу три столбца данных (со 2-го по 4-й) для искомого значения. Это устраняет необходимость создания отдельных формул для каждого столбца и значительно упрощает структуру таблицы.

Генерация последовательностей дат с функцией ДАТА

Функция ПОСЛЕД эффективна для создания календарей и графиков. Формула

=ДАТА(2024;1;ПОСЛЕД(31))

генерирует все даты января 2024 года. Чтобы узнать, как не вводить количество дней месяца вручную, смотрите эту статью: Как посчитать количество дней в месяце.

Для рабочих дней используется комбинация с РАБДЕНЬ.МЕЖД:

=РАБДЕНЬ.МЕЖД(НАЧАЛЬНАЯ_ДАТА;ПОСЛЕД(30)-1)

создает последовательность из 30 рабочих дней.

А так в комбинации с функциями СЕГОДНЯ, ГОД, ДАТА и ТЕКСТ можно создать упорядоченный список названий месяцев:

=ТЕКСТ(ДАТА(ГОД(СЕГОДНЯ());ПОСЛЕД(12);1);"ММММ")
Функция ПОСЛЕД для создания списка названий месяцев

Если “обернуть” формулу функцией ТРАНСП, список станет горизонтальным. Это исключает необходимость ручного обновления шапок отчетов при смене периода.