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

Функция SMALL в Google Таблицах: синтаксис, примеры и практические советы

6 min read Google Таблицы Обновлено 25 Oct 2025
Функция SMALL в Google Таблицах — примеры и советы
Функция SMALL в Google Таблицах — примеры и советы

Кратко: Функция SMALL возвращает n-ое наименьшее значение из диапазона. Эта инструкция объясняет синтаксис, практические приёмы (включая сортировку, вложенные формулы с IF и ARRAYFORMULA), типичные ошибки и альтернативы. Включены чек-листы, шпаргалки и диаграмма принятия решений.

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

Функция SMALL ищет среди набора значений значение с заданным рангом по возрастанию — например, самое маленькое (n=1), второе по величине минимальное (n=2) и т.д. Коротко: SMALL возвращает n-ю по счёту минимальную величину в указанном диапазоне.

Определения терминов:

  • Диапазон: набор ячеек (например, A2:A10).
  • n: ранг минимального значения, целое число >=1.

Преимущества использования SMALL

  • Получение не только минимального значения, но и 2‑го, 3‑го и т.д.
  • Лёгкая комбинация с IF, ARRAYFORMULA и ROW для фильтрации и сортировки.
  • Удобно при работе с ранжированием и выборкой лучших/худших показателей.

Google-логотип на белом и сером фоне

Синтаксис функции SMALL

=SMALL(data, n)

Пояснения:

  • data — диапазон или массив значений (все значения должны иметь сопоставимый тип: числа, даты и т. п.).
  • n — целое число, указывающее, какое по счёту минимальное значение вернуть (1 = самое маленькое). Если n больше количества чисел в диапазоне, результат — ошибка #NUM!.

Важно: при использовании смешанных типов (текст + числа) текст игнорируется; при отсутствии чисел возвращается #NUM!.

Когда применять SMALL

Используйте SMALL, когда необходимо:

  • Найти второе/третье/пятое минимальное значение в наборе.
  • Отсортировать столбец по возрастанию при помощи формулы (без использования ручной сортировки).
  • Получить минимальные значения с условием (например, минимальная цена среди товаров определённой категории).

Практические примеры

Простой пример

Предположим, у вас есть набор значений в диапазоне A2:B11 и нужно найти самое маленькое значение.

Шаги:

  1. Выберите пустую ячейку, например C2.
  2. Введите формулу: =SMALL(A2:B11, 1) — где 1 означает самое маленькое значение.
  3. Нажмите Enter — в ячейке отобразится минимальное значение диапазона.

Пример данных для теста функции SMALL

Результат базовой функции SMALL

Чтобы получить 2‑е или 3‑е наименьшее значение, измените второй аргумент: =SMALL(A2:B11, 2), =SMALL(A2:B11, 3) и т. д.

Сортировка с помощью SMALL и ROW

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

Формула (пример для столбца B с данными в B2:B11):

=SMALL($B$2:$B$11, ROW()-1)

Пояснение:

  • Абсолютные ссылки $B$2:$B$11 фиксируют диапазон при автозаполнении.
  • ROW() возвращает номер текущей строки; вычитаем 1, чтобы для строки 2 получить n=1.
  • Протяните формулу вниз — получите отсортированный по возрастанию список.

Использование ROW с SMALL для сортировки

Совет: если диапазон содержит пустые ячейки или текст, сначала фильтруйте только числовые значения: =SMALL(FILTER($B$2:$B$11, ISNUMBER($B$2:$B$11)), ROW()-1).

Вложение SMALL с IF и ARRAYFORMULA

Иногда нужно найти n-ю минимальную величину среди подмножества данных (например, только для определённого класса или категории). Для этого удобно использовать IF внутри ARRAYFORMULA:

=ARRAYFORMULA(SMALL(IF(B2:B9>=2, C2:C9), 1))

Пояснение:

  • IF(B2:B9>=2, C2:C9) возвращает массив значений из C2:C9 только там, где B2:B9 >= 2; в остальных позициях — FALSE.
  • SMALL игнорирует логические FALSE и ищет минимум среди чисел.
  • ARRAYFORMULA даёт возможность работать с массивами без копирования формулы в каждую ячейку.

Пример данных с временами картинга

Построение ARRAYFORMULA с IF и SMALL

Дополнительный пример — n-ые минимальные уникальные значения (без повторов). Один из способов — использовать комбинацию SMALL и COUNTIF:

=SMALL(UNIQUE(FILTER($A$2:$A$100, ISNUMBER($A$2:$A$100))), n)

или, если нужно пропускать повторы при последовательном извлечении:

=SMALL($A$2:$A$100, MATCH(0, COUNTIF($C$1:C1, $A$2:$A$100), 0))

(последняя формула требует ввода как массивной формулы в некоторых системах; в Google Таблицах используйте с осторожностью и в контексте динамических массивов).

Применение с QUERY и FILTER

Иногда удобнее сначала сузить набор данных функцией FILTER или QUERY, а затем вычислить SMALL от отфильтрованного диапазона:

=SMALL(FILTER(C2:C100, D2:D100 = "Категория A"), 1)

Это более прозрачный и часто более надёжный подход, чем громоздкие вложения IF.

Частые ошибки и способы их устранения

1. Наличие текстовых или смешанных данных

Проблема: SMALL игнорирует текст; если в диапазоне нет чисел — возвращает #NUM!. Решения:

  • Убедитесь, что диапазон содержит числа: используйте ISNUMBER и FILTER: =SMALL(FILTER(A2:A100, ISNUMBER(A2:A100)), 1).
  • Если числа записаны как текст, преобразуйте: используйте VALUE или TO_NUMBER: =VALUE(A2) или примените формат чисел.

2. n вне диапазона

Проблема: если n больше количества числовых значений, SMALL выдаёт #NUM!. Решения:

  • Проверяйте длину массива: =IF(n>COUNT(A2:A100), "нет данных", SMALL(A2:A100, n)).
  • Используйте IFERROR для мягкого ответа: =IFERROR(SMALL(A2:A100, n), "—").

3. Пустые ячейки и нули

Проблема: пустые ячейки игнорируются; нули считаются числами. Если нули не должны учитываться, фильтруйте их:

=SMALL(FILTER(A2:A100, A2:A100<>0), 1)

4. Неправильные абсолютные/относительные ссылки при автозаполнении

Проблема: при протягивании формул диапазон меняется, и результаты ломаются. Решение: используйте $ для фиксации диапазона: $A$2:$A$100.

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

  • MIN — проще, если нужно только самое маленькое значение (n=1). Синтаксис: =MIN(A2:A100).
  • SORT — быстрый способ получить полностью отсортированный диапазон: =SORT(A2:A100, 1, TRUE).
  • SORTN — выбрать топ N значений: =SORTN(A2:A100, 3, 0, 1, TRUE) (в некоторых вариантах Google Таблиц можно настроить сортировку и уникальность).
  • QUERY — мощный фильтр и агрегация, удобен при сложных условиях и работе с несколькими столбцами.

Выбор:

  • Для единого n используйте SMALL.
  • Для полного отсортированного списка используйте SORT.
  • Для выборки топ N и уникальности рассмотрите SORTN или комбинацию UNIQUE + SORT.

Шпаргалка: быстрые формулы

  • Самое маленькое: =SMALL(A2:A100, 1)
  • 3‑е по порядку минимальное: =SMALL(A2:A100, 3)
  • Минимум по условию: =SMALL(FILTER(A2:A100, B2:B100="Категория"), 1)
  • Сортировка колонкой B: в C2 введите =SMALL($B$2:$B$11, ROW()-1) и протяните вниз
  • Защита от ошибок: =IFERROR(SMALL(A2:A100, n), "Нет значения")

Чек-лист применения по ролям

Data Analyst:

  • Убедиться, что диапазон содержит только числовые данные.
  • При необходимости фильтровать ненужные категории через FILTER/QUERY.
  • Использовать абсолютные ссылки при автозаполнении.

Финансовый аналитик:

  • Проверять валидность валютных форматов.
  • Игнорировать нули, если они означают «нет данных», а не 0.
  • Оборачивать формулы в IFERROR с понятной меткой.

Преподаватель / студент:

  • Для оценок использовать SMALL для поиска минимальных баллов (n=1) или худших n.
  • Документировать, что именно исключается из расчётов (отсутствующие оценки, пропуски).

Мини‑методология: как безопасно найти n‑ое минимальное значение

  1. Определите диапазон и подтвердите, что в нём есть числа (COUNT или COUNTIF).
  2. Если нужны условия — сузьте набор с помощью FILTER или QUERY.
  3. Примените SMALL с проверкой на диапазон: IF(n>COUNT(...), "Нет данных", SMALL(...)).
  4. Защитите результат от ошибок через IFERROR или пользовательскую подпись.

Диаграмма принятия решений

flowchart TD
  A[Нужно n-ое минимальное значение?] --> B{Нужны ли условия?}
  B -- Да --> C[Использовать FILTER/QUERY]
  B -- Нет --> D[Использовать SMALL]
  C --> E{Нужен отсортированный список?}
  D --> F{n=1?}
  F -- Да --> G[Можно использовать MIN вместо SMALL]
  F -- Нет --> H[SMALL'data,n']
  E -- Да --> I[Использовать SORT или SORTN]
  E -- Нет --> H
  G --> END[Готово]
  H --> END
  I --> END

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

  • Формулы возвращают ожидаемый n‑ый минимум для тестового набора.
  • Ошибки #NUM! и #VALUE! обработаны и заменены понятными сообщениями.
  • При автозаполнении диапазоны остаются корректными благодаря абсолютным ссылкам.

Часто задаваемые вопросы

Можно ли вычислить n‑тые минимальные значения с учётом нескольких условий?

Да. Сначала отфильтруйте диапазон с помощью FILTER или QUERY, затем примените SMALL к отфильтрованному массиву. Пример: =SMALL(FILTER(C2:C100, B2:B100="Категория"), 1).

Что делать, если SMALL возвращает #NUM!?

Проверьте, содержатся ли в диапазоне числовые значения и не превышает ли n количество чисел. Используйте COUNT и IF для проверки: =IF(n>COUNT(A2:A100), "нет данных", SMALL(A2:A100, n)).

Чем SMALL отличается от MIN?

MIN возвращает только наименьшее значение (аналог n=1). SMALL позволяет выбрать любое n-ое минимальное значение.

Краткая сводка

Функция SMALL — гибкий инструмент для извлечения n‑го наименьшего значения в Google Таблицах. Её сила проявляется при сочетании с FILTER, IF, ARRAYFORMULA и ROW: это позволяет делать фильтрацию, ранжирование и динамическую сортировку без ручного вмешательства. Всегда проверяйте типы данных, обрабатывайте ошибки и используйте абсолютные ссылки при автозаполнении.

Продолжение поиска n‑го минимального значения

Пример SMALL игнорирует нечисловые данные

Ошибка SMALL при отсутствии числовых данных

Ошибка из‑за обращения за пределы диапазона

Использование MIN как альтернатива SMALL

Дополнительные заметки

Важно: при работе с датами Google Таблицы рассматривают даты как числовые значения (целые/дробные числа). SMALL корректно работает с датами: чем меньший числовой код даты — тем более «ранняя» дата считается меньшей.

Если вы хотите получить n‑ую минимальную позицию с учётом повторяющихся значений, продумайте, считаете ли вы повторы отдельными записями или хотите уникальные значения. Для уникальных результатов используйте UNIQUE вместе с FILTER и SMALL.

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

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

Отключить Internet Explorer 11 в Windows 10
Windows

Отключить Internet Explorer 11 в Windows 10

Установка TaskBoard на Ubuntu 18.04
Инструкции

Установка TaskBoard на Ubuntu 18.04

Очеловечивание текстов ChatGPT — 5 способов
Контент

Очеловечивание текстов ChatGPT — 5 способов

Портфолио веб‑разработчика для студента
Веб-разработка

Портфолио веб‑разработчика для студента

Как атаковать в Whiteout Survival — полное руководство
Игровой гайд

Как атаковать в Whiteout Survival — полное руководство

Включить Night Clock на Samsung Edge
Mobile

Включить Night Clock на Samsung Edge