Перейти к содержимому

Как добавить цвет фона для верхнего или нижнего колонтитула на листе Excel при печати?

Author: Sun Last Modified: 2025-08-07

Как известно, в верхний или нижний колонтитул листа можно добавить текст или изображение, которые будут отображаться при печати. Но пробовали ли вы когда-нибудь добавить цвет фона в колонтитулы? На самом деле, стандартной функции для этого нет, однако ниже я расскажу о нескольких обходных способах выполнения этой операции.

Добавление цвета фона в верхний или нижний колонтитул с помощью функции Цвет заполнения

Добавление цвета фона в верхний и нижний колонтитулы с помощью VBA


Добавление цвета фона в верхний или нижний колонтитул с помощью функции Цвет заполнения

1. Нажмите Разметка страницы > Настройка страницы.
A screenshot showing Page Layout Page Setup option in Excel

2. В Настройка страницы диалоговом окне на вкладке Поля укажите 0 в Верхнее, Верхний колонтитул, Нижнее и Нижний колонтитул в соответствующих полях.
A screenshot showing Page Setup dialog to adjust margins in Excel

3. Нажмите ОК. Затем выберите первую строку и нажмите Главная > Объединить и По центру.
A screenshot of Merge and Center option

3. Далее выберите цвет из списка Цвет заполнения для добавления цвета фона в объединенные ячейки.
A screenshot of selecting fill color for Excel header

4. Повторите шаги2 и3, чтобы добавить цвет фона в нужную строку нижнего колонтитула.

Теперь на странице кажется, что цвет фона добавлен к верхнему и нижнему колонтитулам.
A screenshot showing Excel worksheet with header and footer color


Добавление цвета фона в верхний и нижний колонтитулы с помощью VBA

Ниже приведён VBA-код, который позволяет быстро добавить цвет фона одновременно в верхний и нижний колонтитулы.

1. Нажмите Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Выберите Вставка > Модуль, скопируйте и вставьте приведённый ниже код в новый модуль.

VBA: Добавление цвета фона в верхний и нижний колонтитулы

Sub FakeHeaderFooter()
'UpdatebyExtendoffice20180628
    Dim I, J As Long
   Dim xRg As Range
    Dim xRow, xCol As Long
    Dim xRows, xCols As Long
    Dim xDivRow, xDivCol As Long
    Dim xTopArr, xButtArr As Variant
    Dim PageSize1, PageSize2 As Integer
    On Error Resume Next
    xTopArr = Array("Top Left", "", "", "Top Center", "", "", "", "")
    xButtArr = Array("Bottom Left", "", "", "Bottom Center", "", "", "", "")
    PageSize1 = 46
    PageSize2 = 8
    With ActiveSheet.PageSetup
        .TopMargin = Application.InchesToPoints(0)
        .BottomMargin = Application.InchesToPoints(0)
        .HeaderMargin = Application.InchesToPoints(0)
        .FooterMargin = Application.InchesToPoints(0)
        .BlackAndWhite = False
    End With
    Set xRg = ActiveSheet.UsedRange
    If xRg Is Nothing Then Exit Sub
    xRows = xRg(xRg.Count).Row
    xCols = xRg(xRg.Count).Column
    If xRows < 46 Then xRows = 46
    If xCol < 8 Then xCol = 8
    xDivRow = Int(xRows / PageSize1)
    xDivCol = Int(xCols / PageSize2)
    If ((xRows Mod PageSize1) > 0) And (xDivRow <> 0) Then xDivRow = xDivRow + 1
    If ((xCols Mod PageSize2) > 0) And (xDivCol <> 0) Then xDivCol = xDivCol + 1
    If xDivRow = 0 Then xDivRow = 1
    If xDivCol = 0 Then xDivCol = 1
    Set xRg = Range("A1").Resize(xDivRow * PageSize1, xDivCol * PageSize2)
    xRow = 1
    xCol = 1
    Cells.PageBreak = xlPageBreakNone
    For I = 1 To xDivRow * PageSize1 Step PageSize1 + 1
        For J = 1 To xDivCol * PageSize2 Step PageSize2
            Cells(I, J).Resize(1, PageSize2) = xTopArr
            Cells(I, J).Resize(1, PageSize2).Interior.ColorIndex = 34
            Cells(I + PageSize1, J).Resize(1, PageSize2) = xButtArr
            Cells(I + PageSize1, J).Resize(1, PageSize2).Interior.ColorIndex = 34
            Rows(I + PageSize1 + 1).PageBreak = xlManual
            Columns(J + PageSize2).PageBreak = xlManual
        Next
    Next
End Sub

A screenshot showing VBA code pasted in a module

3. Нажмите F5 для запуска кода — после этого определённый цвет фона будет добавлен к первой и47-й строкам каждого листа, которые будут выступать в роли условных верхнего и нижнего колонтитулов.
A screenshot of VBA-applied header and footer color in Excel

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

1. Измените содержимое верхнего и нижнего колонтитулов в строках:

xTopArr = Array("Top Left", "", "", "Top Center", "", "", "", "")

xButtArr = Array("Bottom Left", "", "", "Bottom Center", "", "", "", "")

2. Измените индекс цвета фона в этой строке:

Cells(I, J).Resize(1, PageSize2).Interior.ColorIndex =34

Cells(I + PageSize1, J).Resize(1, PageSize2).Interior.ColorIndex =34


Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!