Excel и Google Workspace / Базовые формулы Excel
CHOOSEROWS в Excel: выбрать строки массива по номерам
CHOOSEROWS извлекает отдельные строки массива по их позициям, сохраняя порядок аргументов и позволяя обращаться к строкам с конца.
Формула
Результат имеет две строки и три столбца.
Обозначения
- $array$
- исходный двумерный массив, строки и столбцы
- $row_num1$
- номер первой возвращаемой строки, целое число
- $row_num2$
- дополнительные номера строк, целые числа
Условия применения
array должен иметь хотя бы одну строку. row_num — целое число; допустимы положительные номера от 1 до высоты массива и отрицательные от -1 до минус высоты. Ноль и выход за высоту дают #VALUE!. Индексы считаются относительно переданного диапазона, поэтому добавление строк выше диапазона листа не меняет смысл формулы, а изменение самого array может изменить доступные позиции. Доступность проверена для Microsoft 365 и Excel 2024; формулы показаны в английской записи с запятыми.
Ограничения
CHOOSEROWS не выполняет фильтрацию по значениям, сортировку, агрегацию или удаление дублей. Повтор row_num создаёт повтор строки. Ошибки источника сохраняются в выбранных ячейках. Номер 0 и индекс за пределами высоты вызывают #VALUE!, а занятая область вывода — #SPILL!. Для отбора по условию используйте отдельный шаг подготовки массива.
Подробное объяснение
CHOOSEROWS возвращает из array только строки, перечисленные аргументами row_num. Порядок аргументов становится порядком строк результата, а все столбцы выбранных строк сохраняются. Для A2:C5=[[11,12,13],[21,22,23],[31,32,33],[41,42,43]] формула CHOOSEROWS(A2:C5,3,1) возвращает [[31,32,33],[11,12,13]]. Индексы 3 и 1 относятся к строкам внутри переданного диапазона, а не к абсолютным номерам строк листа. Отрицательная нумерация идёт от конца: -1 — последняя строка, -2 — предпоследняя. Поэтому CHOOSEROWS(A2:C5,-1,2) даёт [[41,42,43],[21,22,23]]. Такой приём удобен для журнала, где нужно поставить свежую запись перед контрольной строкой. Один индекс можно повторить. CHOOSEROWS(A2:C5,2,2) возвращает [[21,22,23],[21,22,23]]. Повтор сохраняет исходные значения и создаёт две одинаковые строки в разливе; это может быть частью шаблона, но обычно требует проверки намерения. Ноль недопустим, как и индекс, абсолютное значение которого превышает высоту array: Microsoft указывает #VALUE!. CHOOSEROWS не фильтрует строки по условию и не сортирует их. Если нужен отбор по значениям, сначала сформируйте подходящий массив отдельной функцией, затем примените позиционный выбор. Область разлива должна быть свободна.
Как пользоваться формулой
- Посчитайте строки внутри исходного диапазона, начиная с единицы, независимо от номеров строк листа.
- Составьте порядок вывода из положительных или отрицательных индексов; повторы задавайте намеренно.
- Введите =CHOOSEROWS в свободную область, оставив достаточно места для всех столбцов выбранных строк.
- Сверьте порядок записей и проверьте индексы при #VALUE!: ноль и выход за высоту массива недопустимы.
Историческая справка
CHOOSEROWS появилась в наборе динамических массивов Excel, где формула может вернуть разлившийся набор строк. До этого выбор и перестановку строк часто строили через INDEX, вспомогательные номера или ручное копирование диапазонов. Новая функция формализует именно позиционное извлечение: array задаёт границы, а список row_num задаёт последовательность результата. Отрицательные индексы делают обращение к хвосту диапазона явным, а повтор аргумента позволяет описывать шаблон без дублей исходных данных. Microsoft относит функцию к возможностям Microsoft 365 и Excel 2024; это осторожная атрибуция поддерживаемых продуктов и синтаксиса, а не заявление о происхождении всех прежних методов выборки.
Историческая линия формулы
Microsoft Support описывает CHOOSEROWS как функцию возврата заданных строк массива, показывает повтор и отрицательные номера в примерах и указывает #VALUE! для нуля или выхода за высоту. Сведения о Microsoft 365 и Excel 2024 взяты из официального справочника функций; объяснение относительности индексов и практические сценарии являются редакционным применением этого синтаксиса.
Пример
В A2:C5 записаны четыре строки: [11,12,13], [21,22,23], [31,32,33], [41,42,43]. Формула =CHOOSEROWS(A2:C5,3,1) возвращает [31,32,33] и [11,12,13]. Третья строка диапазона находится на строке 4 листа, а первая — на строке 2. Результат имеет две строки и три столбца: ширина каждой записи сохранена полностью. Для проверки сумма первой выбранной строки равна 96, второй — 36; сами значения функция только копирует в разлив. Если требуется выбрать записи с определённой суммой или датой, нужна предварительная фильтрация по условию. Здесь выбор зависит исключительно от позиции внутри переданного array.
Частая ошибка
Не путайте индекс внутри A2:C5 с номером строки листа: первая строка массива находится на строке 2 листа. Не считайте -1 последней непустой строкой всего листа: это последняя строка переданного массива. Не ждите фильтрации по значению. Не удаляйте повторяющийся индекс, если шаблон специально требует показать запись дважды.
Практика
Задачи с решением
Последняя и вторая
Условие. A2:C5 задан как [[11,12,13],[21,22,23],[31,32,33],[41,42,43]]. Используйте исходный массив из разобранного примера.
Решение. = CHOOSEROWS(A2:C5,-1,2). Перенесите указанные строки целиком, сохранив три значения внутри каждой.
Ответ. [[41,42,43],[21,22,23]].
Повтор второй строки
Условие. Нужно два раза вывести строку 2. Используйте исходный массив из разобранного примера.
Решение. =CHOOSEROWS(A2:C5,2,2). Индекс 2 записан дважды, поэтому строка [21,22,23] появляется в результате два раза.
Ответ. [[21,22,23],[21,22,23]].
Дополнительные источники
- https://support.microsoft.com/en-us/excel/functions/chooserows-function
- https://support.microsoft.com/en-us/excel/functions/choosecols-function
Связанные формулы
Excel и Google Workspace
CHOOSECOLS в Excel: выбрать столбцы массива по номерам
CHOOSECOLS возвращает только названные столбцы исходного массива, допускает перестановку, повтор и отрицательные номера с конца.
Excel и Google Workspace
TAKE в Excel: выбрать строки и столбцы массива
TAKE возвращает заданное число соседних строк или столбцов с начала или конца массива. Знак rows и columns задаёт сторону выбора, а исходная матрица и порядок её элементов сохраняются.
Excel и Google Workspace
DROP в Excel: исключить строки и столбцы массива
DROP удаляет заданное число соседних строк или столбцов с начала или конца массива и возвращает оставшуюся прямоугольную часть. Исходный диапазон при этом не изменяется.