Гид по технологиям

Как использовать функции TAKE и DROP в Excel

6 min read Excel Обновлено 03 Jan 2026
TAKE и DROP в Excel: извлечение и исключение данных
TAKE и DROP в Excel: извлечение и исключение данных

Зелёный линейный график на таблице Excel

Введение

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

В этом руководстве вы найдёте понятные определения, практические примеры, рекомендации по сочетанию с другими функциями и подсказки на случай ошибок и ограничений.

Что делает функция TAKE

Функция TAKE извлекает указанное количество строк и/или столбцов из массива.

Синтаксис:

=TAKE(array, rows, [columns])

Параметры:

  • array: исходный массив или диапазон.
  • rows: число строк для извлечения. Отрицательное число берёт строки с конца.
  • columns: (необязательный) число столбцов для извлечения. Отрицательное значение берёт столбцы с конца.

Кратко: TAKE берёт фрагмент массива, не изменяя исходные данные.

Что делает функция DROP

Функция DROP исключает указанное число строк и/или столбцов из массива.

Синтаксис:

=DROP(array, rows, [columns])

Параметры аналогичны TAKE:

  • array: исходный массив или диапазон.
  • rows: число строк, которые нужно удалить. Отрицательное число удаляет строки с конца.
  • columns: число столбцов для удаления. Отрицательное значение удаляет столбцы с конца.

Коротко: DROP возвращает массив за вычетом указанных строк/столбцов.

Важно: TAKE и DROP доступны в Excel для Microsoft 365, Excel для Mac в составе Microsoft 365 и Excel для веб. В старых настольных версиях их нет.

Основные примеры использования

Ниже приведены практические кейсы с пошаговыми инструкциями.

Пример 1. Извлечь первые пять строк

Предположим, что у вас есть таблица продуктов и их цен. Вместо копирования вы можете получить первые 5 строк так:

=TAKE(B2:F21, 5)

Эта формула возвращает первые 5 строк из диапазона B2:F21.

Функция TAKE в работе в Excel

Пример 2. Получить первый столбец

Если нужно взять все строки только первого столбца диапазона, укажите пустой параметр rows и передайте columns:

=TAKE(B2:F21,,1)

Пустой параметр rows означает «все строки», возвращая весь первый столбец.

Функция TAKE в работе в Excel

Пример 3. Исключить последние 10 строк

Чтобы показать всё, кроме последних 10 строк, используйте DROP с отрицательным значением:

=DROP(B2:F21, -10)

Отрицательное rows указывает, что удаляются строки с конца диапазона.

Функция DROP в Excel

Пример 4. Удалить последний столбец

Чтобы отсечь последний столбец диапазона:

=DROP(B2:F21,, -1)

Это вернёт массив без последнего столбца.

Функция DROP в Excel

Сочетание с другими функциями

Гибкость растёт, когда вы комбинируете TAKE и DROP с другими динамическими функциями.

Пример: получить первую ячейку среди товаров с ценой выше N100:

=TAKE(FILTER(B3:E8, D3:D8>100), 1, 1)

Здесь FILTER возвращает все строки с ценой больше N100, а TAKE берёт первый элемент результата.

Объединение FILTER и TAKE в Excel

Полезные сочетания:

  • FILTER + TAKE — выбрать первые N результатов после фильтрации.
  • SORT + TAKE — взять топ по метрике.
  • TAKE + DROP — выделить середину диапазона: сначала DROP первой части, затем TAKE нужного объёма.
  • LET + TAKE — дать имена промежуточным массивам для читаемости формул.

Пример использования LET для читаемости:

=LET(
  data, B2:F21,
  filtered, FILTER(data, D2:D21>100),
  TAKE(filtered, 3)
)

Когда TAKE и DROP не работают или дают ошибки

Важно понимать ограничения и частые причины ошибок.

  • Ошибка #SPILL: результирующий массив не помещается в соседние ячейки. Освободите пространство или используйте одну ячейку для массива.
  • Старые версии Excel: функции отсутствуют и формула выдаст ошибку или не распознается. Решение — заменять на INDEX/SEQUENCE/OFFSET или использовать Power Query.
  • Несовместимые размеры: при математических операциях с массивами проверьте согласованность размеров.
  • Мerged cells: объединённые ячейки часто приводят к ошибкам разброса массива.

Примеры обходов для старых версий:

  • Взять первые N строк: INDEX + SEQUENCE + TRANSPOSE/IFERROR комбинация.
  • Удалить последние строки: использовать INDEX с вычислением последней строки через COUNTA.

Практические приёмы и подсказки

  • Используйте отрицательные аргументы для удобного обращения к концам массива.
  • Для динамических таблиц (Excel Tables) передавайте именованные диапазоны или структурированные ссылки.
  • Когда результат потенциально большой, проверяйте свободные ячейки и препятствия, вызывающие #SPILL.
  • В сложных сценариях используйте LET для разбиения формулы на логические части.

Мини‑методология: как выбрать TAKE или DROP

  1. Определите цель: нужно взять часть массива или убрать часть массива.
  2. Если нужна «передняя» часть — используйте TAKE. Если нужно «отсечь» часть — DROP.
  3. Подумайте о порядке операций: сначала фильтрация, сортировка, затем TAKE/DROP.
  4. Тестируйте формулу на небольшом подмножестве, прежде чем применять на всей таблице.

Альтернативные подходы

  • INDEX + SEQUENCE: рабочая альтернатива для извлечения диапазонов в старых версиях.
  • OFFSET: делает смещения динамическими, но является волатильной функцией и может замедлять большой файл.
  • Power Query: лучше для подготовки и трансформации больших наборов данных вне листа.

Контрпримеры и ограничения

  • TAKE(B2:F21, 1000) на маленьком диапазоне вернёт #REF или #SPILL, если размер выходит за границы.
  • DROP с положительным значением rows удаляет строки с начала, а с отрицательным — с конца. Неправильный знак даёт неожиданный результат.
  • Если массив содержит ошибки, результат TAKE/DROP может наследовать эти ошибки.

Чеклист для разных ролей

Аналитик:

  • Проверил, что результат помещается на листе
  • Указал правильный знак для отрицательных аргументов
  • Протестировал на граничных случаях (пустые данные, все значения ниже порога)

BI‑разработчик:

  • Использует LET для читаемости
  • Комбинирует с SORT и FILTER для детерминированного вывода
  • Обрабатывает потенциальные ошибки через IFERROR или ISERROR

Бухгалтер:

  • Убедился, что ссылки на таблицы обновляются при вставке строк
  • Проверил совместимость с корпоративной версией Excel

Тестовые кейсы и критерии приёмки

Кейс 1: входной диапазон 10 строк, формула =TAKE(range, 5) — ожидается массив из 5 строк.

Кейс 2: входной диапазон пуст, формула =DROP(range, -3) — ожидается пустой массив без ошибок.

Критерии приёмки:

  • Формула возвращает корректный размер массива
  • Нет #SPILL в тестовой области
  • При передачи результата в другую функцию (например, SUM) результат совпадает с ожидаемым ручным вычислением

Безопасность и конфиденциальность

Функции сами по себе не передают данные извне, но при комбинировании с внешними источниками (Power Query, подключениями) помните про ограничения доступа и конфиденциальность.

Примеры быстрого шпаргалки

  • TAKE(range, n) — взять первые n строк
  • TAKE(range, -n) — взять последние n строк
  • TAKE(range,, m) — взять m первых столбцов
  • DROP(range, n) — удалить первые n строк
  • DROP(range, -n) — удалить последние n строк

Советы по совместимости и миграции

  • Для пользователей старых версий подготовьте альтернативные формулы с INDEX/SEQUENCE/COUNTA.
  • При миграции шаблонов проверьте макросы и сторонние плагины на совместимость с динамическими массивами.

Образец таблицы в Excel

Частые ошибки и как их исправить

  • Проблема: #SPILL. Решение: освободите соседние ячейки или укажите подходящий диапазон вывода.
  • Проблема: функция не распознаётся. Решение: обновите Excel до Microsoft 365 или используйте альтернативы.
  • Проблема: неверный знак для отрицательных аргументов. Решение: проверьте документацию и тестовые примеры.

Итог

Функции TAKE и DROP упрощают работу с частями массивов и повышают читабельность формул при работе с динамическими данными. Они хорошо сочетаются с FILTER, SORT и LET. Для совместимости со старыми версиями подготовьте альтернативные формулы на базе INDEX/SEQUENCE или используйте Power Query.

Важно: перед развёртыванием в рабочем процессе протестируйте формулы на граничных случаях и убедитесь, что файл остаётся быстрым и без лишних #SPILL.

Краткие шаги для начала:

  1. Попрактикуйтесь на копии файла.
  2. Используйте LET для сложных вычислений.
  3. Обрабатывайте ошибки через IFERROR или надежные проверки данных.

Спасибо за чтение. Если нужно, пришлите пример вашего диапазона — помогу составить формулу под задачу.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как освободить место на Windows Phone 8
Мобильные устройства

Как освободить место на Windows Phone 8

Уборка фото на iPhone: порядок и экономия места
Мобильные

Уборка фото на iPhone: порядок и экономия места

Ошибка OneDrive «Upload Blocked» — как исправить
Windows

Ошибка OneDrive «Upload Blocked» — как исправить

Формы в React: управление полями
React формы

Формы в React: управление полями

Не получается принять файлы по Bluetooth в Windows 10
Windows

Не получается принять файлы по Bluetooth в Windows 10

Импорт контактов Facebook в Gmail — пошагово
Руководство

Импорт контактов Facebook в Gmail — пошагово