Как быстро пронумеровать строки в Excel

Иван Корнев·15.05.2026·5 мин

Чтобы автоматически пронумеровать строки в Excel, используйте функцию =СТРОКА() со смещением (например, =СТРОКА()-1) для статичных списков или функцию =СЧЁТЗ() для нумерации только заполненных ячеек. Для динамических таблиц лучше всего преобразовать диапазон в «Умную таблицу» (Ctrl+T) — формулы применятся ко всем новым строкам автоматически.

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

Простое автозаполнение (Маркер заполнения)

Самый быстрый способ для небольших, неизменяемых списков.

  1. Введите 1 в первую ячейку и 2 во вторую.
  2. Выделите обе ячейки.
  3. Наведите курсор на правый нижний угол выделения (появится черный крестик) и потяните вниз до конца списка.

Если нужно пронумеровать тысячи строк сразу, введите 1 в первую ячейку, затем в поле «Имя» (слева от строки формул) введите диапазон, например A2:A1000, нажмите Enter. Не снимая выделения, введите формулу =СТРОКА()-1 и нажмите Ctrl + Enter.

Минусы метода:

  • При удалении строки нарушается последовательность (появляются пропуски).
  • При добавлении новых строк нумерацию нужно протягивать заново.
  • Числа становятся обычными значениями, а не формулами.

Динамическая нумерация формулой СТРОКА()

Этот метод создает «живую» нумерацию. Если вы удалите строку посередине списка, номера автоматически пересчитаются.

Базовая формула

Если заголовки находятся в первой строке, а данные начинаются со второй (ячейка A2), используйте:

=СТРОКА()-1

Логика проста: функция СТРОКА() возвращает номер текущей строки листа. Вычитая 1 (номер строки заголовка), мы получаем порядковый номер записи.

Универсальная формула

Если таблица начинается с другой строки (например, с 5-й), используйте конструкцию, которая не требует ручного подсчета смещения:

=СТРОКА() - СТРОКА($A$1)

Где $A$1 — это адрес первой ячейки вашей нумерации (или строки над ней, в зависимости от логики).

Более надежный вариант для начала с ячейки A2:

=СТРОКА(A2) - СТРОКА($A$1)

При копировании этой формулы вниз ссылка A2 будет меняться на A3, A4, а $A$1 останется фиксированной. Разница всегда будет равна порядковому номеру.

Нумерация только заполненных строк

Часто бывает, что таблица заполняется постепенно, и между данными есть пустые строки. Функция СТРОКА() все равно присвоит им номер. Чтобы нумеровать только те строки, где есть данные (например, в столбце B), используйте функцию СЧЁТЗ.

Вставьте в ячейку A2 формулу:

=ЕСЛИ(B2<>""; СЧЁТЗ($B$2:B2); "")

Как это работает:

  1. ЕСЛИ(B2<>""; ... ; "") проверяет, есть ли данные в соседней ячейке. Если пусто — ставит прочерк.
  2. СЧЁТЗ($B$2:B2) считает количество непустых ячеек в диапазоне от начала списка до текущей строки.
  3. Знак $ перед B$2 фиксирует начало диапазона, чтобы при протягивании формулы вниз диапазон расширялся ($B$2:B3, $B$2:B4 и т.д.).

Функция СЧЁТЗ может работать медленнее на очень больших объемах данных (тысячи строк), так как пересчитывает диапазон для каждой ячейки.

Нумерация в «Умной таблице» (Рекомендуемый способ)

Преобразование обычного диапазона в объект «Таблица» (ListObject) решает проблему с добавлением новых строк.

  1. Выделите ваши данные.
  2. Нажмите Ctrl + T (или Вставка -> Таблица).
  3. Убедитесь, что стоит галочка «Таблица с заголовками».
  4. В первом столбце новой таблицы введите формулу нумерации.

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

Формула внутри умной таблицы выглядит так:

=СТРОКА() - СТРОКА(Таблица1[#Заголовки])

Или более простой вариант, использующий структурированные ссылки:

=СТРОКА([@]) - СТРОКА(Таблица1[#Заголовки])

Преимущества:

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

Нумерация с учетом фильтра (ТОЛЬКО видимые строки)

Стандартные методы нумеруют все строки подряд, даже скрытые фильтром. Если вам нужно, чтобы при фильтрации номера перестраивались (1, 2, 3... только для видимых записей), используйте функцию ПРОМЕЖУТОЧНЫЕ.ИТОГИ.

В ячейку A2 введите:

=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3; $B$2:B2)

Параметры:

  • 3 — соответствует функции СЧЁТЗ (считает непустые ячейки), но игнорирует скрытые фильтром строки.
  • $B$2:B2 — диапазон, в котором считаются записи.

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

Сравнение методов нумерации

МетодРеагирует на удаление строкРаботает с фильтромСложность настройки
Маркер заполненияНет (нужно править вручную)НетНизкая
Формула СТРОКА()Да (автоматически)Нет (нумерует все строки)Низкая
Формула СЧЁТЗ()ДаНет (нумерует все заполненные)Средняя
Умная таблица + СТРОКА()ДаНет (но удобно расширять)Низкая
ПРОМЕЖУТОЧНЫЕ.ИТОГИДаДа (нумерует видимые)Высокая

Частые ошибки

  1. #ИМЯ? в формуле. Проверьте название функции. В русской версии Excel функции называются СТРОКА, СЧЁТЗ, ПРОМЕЖУТОЧНЫЕ.ИТОГИ. Если у вас английская версия, используйте ROW, COUNTA, SUBTOTAL.
  2. Сбивается нумерация при сортировке. Если вы используете простое автозаполнение, после сортировки числа останутся привязанными к старым данным. Используйте формулы, чтобы номер был привязан к позиции в списке, а не к конкретной ячейке.
  3. Лишние пробелы. Формула с СЧЁТЗ или ЕСЛИ может не сработать, если ячейка выглядит пустой, но содержит пробел. Используйте функцию СЖПРОБЕЛЫ для очистки данных.
  4. Забыли закрепить диапазон. В формулах вида СЧЁТЗ($B$2:B2) важно ставить знак $ перед первой ячейкой диапазона. Без этого при копировании формулы вниз диапазон будет «уезжать», и счет начнется неправильно.

FAQ

Как пронумеровать строки с шагом 2 (1, 3, 5...)? Используйте формулу: =(СТРОКА(A1)*2)-1. Или введите первые два числа (1 и 3), выделите их и протяните маркером заполнения.

Как убрать нумерацию, оставив только числа? Выделите столбец с номерами, скопируйте его (Ctrl+C), затем нажмите правой кнопкой мыши -> Специальная вставка -> Значения. Это заменит формулы на статические числа.

Почему формула СТРОКА() показывает неверный номер? Убедитесь, что вы вычитаете правильное количество строк заголовков. Если заголовок один, вычитайте 1. Если заголовков два (двойная шапка), вычитайте 2. Лучше использовать конструкцию СТРОКА() - СТРОКА($A$1), где $A$1 — ячейка над первой записью.