Нумерация страниц в Microsoft Excel не работает так же просто, как в Word — здесь нет кнопки "Вставить номер страницы" в главном меню. Если при печати большого документа вы получаете ненумерованные листы или одинаковые цифры на всех страницах, проблема кроется в неправильных настройках колонтитулов или параметров печати. В 90% случаев достаточно активировать опцию Разметка страницы → Колонтитулы, но для сложных таблиц (с разрывами страниц или несколькими листами) потребуются дополнительные действия.
В этой статье — 5 проверенных способов пронумеровать страницы в Excel (включая макросы для автоматизации), таблица совместимости методов с версиями программы (2010–2023), а также решения типичных ошибок: почему нумерация сбивается, пропускает листы или дублируется. Все инструкции адаптированы под Windows и macOS, с учетом особенностей интерфейса.
Почему в Excel нет стандартной нумерации страниц
В отличие от текстовых редакторов, Excel изначально не предназначен для работы с многостраничными документами в классическом понимании. Здесь каждая "страница" — это виртуальный лист, который программа разбивает на физические листы при печати. Из-за этого:
- 📄 Номера страниц не отображаются в режиме просмотра — их можно увидеть только в
Предварительном просмотре(Файл → Печать) или после экспорта в PDF. - 🔄 Нумерация сбрасывается при изменении масштаба — если вы уменьшите размер таблицы до 80%, количество страниц сократится, и номера автоматически пересчитаются.
- 📊 Колонтитулы применяются ко всему листу, а не к отдельным разделам — это ограничение архитектуры программы.
Еще одна ключевая особенность: Excel не поддерживает сквозную нумерацию для нескольких листов книги. Если вам нужно пронумеровать страницы последовательно (например, с 1 по 10 для 3 листов), придется использовать макросы или обходить ограничение через объединение данных на одном листе.
⚠️ Внимание: В Excel Online (веб-версия) функция колонтитулов недоступна. Чтобы пронумеровать страницы, скачайте файл в настольную версию программы или используйте альтернативные методы (см. раздел про формулы).
Способ 1: Нумерация через колонтитулы (стандартный метод)
Это базовый способ, который работает во всех версиях Excel (2010–2023). Нумерация добавляется в верхний или нижний колонтитул и автоматически обновляется при изменении количества страниц.
- Откройте лист, который нужно пронумеровать.
- Перейдите на вкладку
Вставка→Колонтитулы(илиРазметка страницы → Колонтитулыв старых версиях). - Кликните по нижнему колонтитулу (рекомендуется) или верхнему — откроется панель редактирования.
- Выберите поле для номера (обычно
Номер страницыв центре) или вручную введите&[Page]. - Чтобы добавить общее количество страниц, используйте код
&[Pages](например, "Страница&[Page]из&[Pages]"). - Закройте колонтитулы и проверьте результат в
Файл → Печать.
Если нумерация не отображается, убедитесь, что:
- 🔍 В настройках печати (
Файл → Печать → Параметры страницы) установлен флажокКолонтитулы. - 📏 Размер бумаги и поля не обрезают колонтитулы (минимальное поле — 1 см).
- 🖨️ Принтер не игнорирует колонтитулы (проверьте настройки драйвера).
Убедиться, что лист не пустой (есть данные для разбивки на страницы)
Проверить, что в параметрах страницы установлен режим "По размеру данных" (не "1 страница")
Отключить масштабирование ("Разместить не более чем на: 1 страницу") в настройках печати
Сохранить файл перед просмотром (иногда предварительный просмотр не обновляется)
-->
Способ 2: Нумерация с помощью формул (для видимых номеров)
Если вам нужны видимые номера страниц прямо в ячейках (а не только при печати), используйте формулы. Этот метод подходит для создания оглавлений или справочников, где важно видеть нумерацию в режиме редактирования.
Алгоритм:
- Добавьте новый столбец слева от таблицы (например,
A). - В ячейку
A1введите формулу:=СТРОКА()-1или для нумерации с произвольного числа (например, с 100):
=СТРОКА()+99 - Протяните формулу до конца таблицы.
- Чтобы номера не сбивались при сортировке, преобразуйте их в значения: выделите столбец →
Главная → Копировать→Вставить значения.
Для нумерации страниц при печати (с учетом разбивки) используйте комбинацию функций:
=ЦЕЛОЕ((СТРОКА()-1)/{количество строк на странице})+1
Где {количество строк на странице} — это число строк, которое помещается на одном листе (узнать его можно в Файл → Печать → Просмотр).
| Формула | Пример | Результат | Когда использовать |
|---|---|---|---|
=СТРОКА() |
=СТРОКА()-1 |
1, 2, 3, ... | Простая нумерация строк |
=ЦЕЛОЕ() |
=ЦЕЛОЕ((СТРОКА()-1)/30)+1 |
1, 1, ..., 2, 2, ... (каждые 30 строк) | Нумерация страниц при печати |
=ПОДСТАВИТЬ() |
=ПОДСТАВИТЬ(ТЕКСТ(СТРОКА();"000");" ";")" |
001, 002, ... | Нумерация с ведущими нулями |
⚠️ Внимание: Формулы для нумерации страниц при печати работают только если вы не изменяете масштаб таблицы после их ввода. При изменении количества строк на странице номера сбиваются.
Способ 3: Макрос VBA для автоматической нумерации
Если вам нужно пронумеровать страницы в нескольких листах книги последовательно (например, с 1 по N без сброса на каждом листе), используйте макрос. Этот метод также полезен для добавления префиксов (например, "Лист1-1", "Лист1-2").
Инструкция:
- Нажмите
Alt + F11, чтобы открыть редактор VBA. - Вставьте новый модуль:
Вставка → Модуль. - Скопируйте код ниже и адаптируйте под свои нужды:
Sub AddPageNumbers()Dim ws As Worksheet
Dim i As Integer
Dim pageNum As Integer
pageNum = 1 ' Начальный номер страницы
For Each ws In ThisWorkbook.Worksheets
With ws.PageSetup
.LeftFooter = "&""Arial,Regular""10 Страница " & pageNum & " из " & Application.ExecuteExcel4Macro("GET.DOCUMENT(50)")
pageNum = pageNum + Application.ExecuteExcel4Macro("GET.DOCUMENT(50)")
End With
Next ws
End Sub
- Запустите макрос кнопкой
F5.
Что делает этот код:
- 🔢 Проходит по всем листам книги (
For Each ws In ThisWorkbook.Worksheets). - 📝 Добавляет номер страницы в левый нижний колонтитул (
.LeftFooter). - 🔄 Автоматически рассчитывает общее количество страниц для каждого листа (
GET.DOCUMENT(50)). - 📊 Нумерация сквозная: если на первом листе 3 страницы, второй лист начнется с 4.
Как изменить шрифт и положение номера страницы в макросе
В строке .LeftFooter = "&""Arial,Regular""10 Страница " & pageNum & " из ":
- Arial,Regular — шрифт (можно заменить на Times New Roman,Bold);
- 10 — размер шрифта;
- LeftFooter — положение (альтернативы: CenterFooter, RightFooter, LeftHeader).
Если макрос не работает:
- 🔒 Убедитесь, что разрешены макросы (
Файл → Параметры → Центр управления безопасностью → Параметры центра → Включить все макросы). - 📂 Сохраните файл в формате
.xlsm(с поддержкой макросов). - 🐞 Проверьте, нет ли ошибок в коде (например, лишних пробелов в
GET.DOCUMENT(50)).
Способ 4: Нумерация для печатных форм (с разрывами страниц)
Если ваш лист содержит принудительные разрывы страниц (Разметка страницы → Разрывы), стандартная нумерация через колонтитулы может сбиваться. В этом случае:
- Удалите все ручные разрывы страниц (
Разметка страницы → Разрывы → Сбросить все разрывы). - Настройте автоматические разрывы:
- 📏 Установите фиксированное количество строк на странице:
Разметка страницы → Печатать titles → Строки на странице: 30. - 🔧 Отключите масштабирование:
Файл → Печать → Параметры → Без масштабирования.
- 📏 Установите фиксированное количество строк на странице:
Для сложных печатных форм (например, с шапкой на каждой странице):
- 📌 Зафиксируйте области печати: выделите диапазон →
Разметка страницы → Область печати → Задать. - 🔁 Повторите заголовки:
Разметка страницы → Печатать titles → Повторяющиеся строки. - 📄 Проверьте разбивку в
Вид → Разметка страницы(синие пунктирные линии показывают границы страниц).
Колонтитулы (стандартный метод)
Формулы в ячейках
Макросы VBA
Ручная нумерация
Другой вариант-->
Способ 5: Нумерация при экспорте в PDF
Если вам нужны номера страниц только в итоговом PDF-файле, а не в самом Excel, используйте один из двух методов:
Метод A: Через виртуальный принтер
- Установите виртуальный принтер (например, Microsoft Print to PDF или CutePDF).
- В Excel настройте колонтитулы с номером страницы (см. Способ 1).
- Выберите
Файл → Печать → Microsoft Print to PDF. - В настройках принтера убедитесь, что включена опция
Печатать колонтитулы.
Метод B: Через Adobe Acrobat
Если у вас установлен Adobe Acrobat Pro:
- Экспортируйте файл из Excel в PDF без нумерации.
- Откройте PDF в Adobe Acrobat.
- Перейдите в
Инструменты → Редактировать PDF → Колонтитулы → Добавить. - Выберите
Номер страницыи настройте положение/стиль.
Преимущество этого метода: вы можете добавить сквозную нумерацию для нескольких Excel-файлов, объединенных в один PDF.
Типичные ошибки и их решения
Даже после правильной настройки нумерации могут возникать проблемы. Вот самые распространенные и способы их исправления:
| Проблема | Причина | Решение |
|---|---|---|
| Номера страниц не отображаются в предварительном просмотре | Колонтитулы выходят за пределы полей печати | Увеличьте поля до 1.5–2 см (Разметка страницы → Поля → Настраиваемые поля) |
| На всех страницах номер "1" | В колонтитуле указано &[Pages] вместо &[Page] |
Исправьте код колонтитула на &[Page] или "Страница &[Page] из &[Pages]" |
| Нумерация сбивается после 9-й страницы | Формат номера страницы — текстовый | Убедитесь, что в колонтитуле используется код &[Page], а не ручной ввод |
| Номера дублируются на одном листе | Лист разбивается на страницы по вертикали и горизонтали | Настройте параметры страницы, чтобы таблица помещалась на 1 листе по ширине (Разметка страницы → Печатать → По ширине: 1 страница) |
| Нумерация не обновляется при изменении данных | Кэширование предварительного просмотра | Сохраните файл, закройте и откройте заново, затем проверьте печать |
1. Изменить шрифт в колонтитуле на более узкий (например, Arial Narrow).
2. Уменьшить размер шрифта до 8–9 пт.
3. Перенести номер в верхний колонтитул вместо нижнего.
-->
FAQ: Частые вопросы по нумерации страниц в Excel
Можно ли сделать нумерацию страниц в Excel Online?
Нет, в веб-версии Excel Online функция колонтитулов недоступна. Альтернативные варианты:
- Открыть файл в настольной версии Excel и настроить нумерацию.
- Использовать формулы для видимой нумерации (см. Способ 2).
- Экспортировать таблицу в Word через
Копировать → Специальная вставкаи нумеровать там.
Как пронумеровать страницы с произвольного числа (например, с 5)?
Если нумерация через колонтитулы:
- Откройте колонтитулы и вручную введите текст, например:
Страница &[Page]+4 из &[Pages](где+4— смещение). - Или используйте макрос (см. Способ 3), изменив строку
pageNum = 5.
Для формул в ячейках добавьте смещение: =СТРОКА()+99 (начнет с 100).
Почему при печати номера страниц накладываются на текст?
Это происходит из-за:
- Слишком маленьких полей (< 0.5 см).
- Большого размера шрифта в колонтитуле (>12 пт).
- Ручных разрывов страниц, смещающих содержимое.
Решение: увеличьте поля до 1.5 см и уменьшите шрифт колонтитула до 10 пт.
Как нумеровать страницы в книге с несколькими листами сквозной нумерацией?
Стандартными средствами Excel это невозможно — каждый лист нумеруется отдельно. Альтернативы:
- Объедините все листы в один (скопируйте данные последовательно).
- Используйте макрос из Способа 3.
- Экспортируйте листы в PDF по отдельности, затем объедините в Adobe Acrobat и добавьте сквозную нумерацию.
Можно ли нумеровать только четные или нечетные страницы?
Да, но только через макросы. Пример кода для нумерации нечетных страниц:
Sub OddPageNumbers()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
With ws.PageSetup
.CenterFooter = "&""Arial""10 " & Chr(34) & "Страница " & Chr(34) & "&[Page]" & IIf([Page] Mod 2 = 1, "", "")
End With
Next ws
End Sub
Для четных страниц замените Mod 2 = 1 на Mod 2 = 0.
Нумерация страниц в Excel работает через колонтитулы, но имеет ограничения:
✅ Стандартный метод (колонтитулы) подходит для простых таблиц.
✅ Формулы нужны для видимой нумерации в ячейках.
✅ Макросы решают задачи сквозной нумерации и кастомизации.
❌ В Excel Online и мобильной версии нумерация недоступна.
-->