Как напечатать границы вокруг каждой страницы в Excel?
При работе с большими листами, занимающими сотни страниц, крайне важно обеспечить чёткий и профессиональный формат печати. Один из способов добиться этого — добавить границу вокруг каждой печатной страницы, чтобы распечатка была визуально разделена и легче воспринималась. Хотя можно вручную выделить и применить границы к содержимому каждой страницы в Excel, такой подход чрезвычайно трудоёмок и непрактичен при работе с множеством страниц. К счастью, существуют более эффективные решения для автоматической печати границ вокруг каждой страницы в Excel. В этой статье мы рассмотрим несколько практических методов выполнения этой задачи, включая встроенные возможности и альтернативные подходы.
➤ Печать границ вокруг каждой страницы с помощью настройки линий сетки
➤ Печать границ вокруг каждой страницы одним щелчком с помощью Kutools для Excel
➤ Печать границ вокруг каждой страницы с помощью автоматизации макросом VBA
Печать границ вокруг каждой страницы с помощью настройки линий сетки
Хотя Excel не предлагает специальной опции для добавления границы вокруг каждой печатной страницы, вы можете воспользоваться функцией Печать линий сетки, чтобы имитировать границы страниц. Это быстрое и удобное решение, не требующее надстроек. Важно: таким образом не создаётся жирный контур страницы — Excel печатает все линии сетки, а край страницы визуально обозначается последними напечатанными линиями.
Примечания:
- Этот метод идеально подходит, если ваш лист организован в виде регулярной сетки и вы не применяете сложные пользовательские границы.
- Если на листе уже задействованы выразительные границы таблиц, печатные линии сетки могут визуально с ними конфликтовать.
1. Если заданы пользовательские границы, сначала удалите их, чтобы избежать наложения или несогласованных линий при печати. Выделите лист, затем перейдите в Главная > Границы (значок) > Нет границ, чтобы убрать границы во всех выделенных ячейках:

2. Перейдите в Разметка страницы > нажмите Настройки страницы (диалоговый запускатель — маленькая стрелка в углу группы), чтобы открыть диалоговое окно «Настройки страницы»:

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

4. Нажмите Предварительный просмотр печати, чтобы подтвердить результат. При печати каждая страница будет отображать чёткую прямоугольную границу, образованную крайними напечатанными линиями сетки, имитирующими границу страницы. См. пример:

Советы:
- Если вам нужны более толстые и заметные границы, рекомендуем вручную добавить внешние границы для области печати или воспользоваться макросом для рисования контуров страниц.
- Избегайте объединённых или нерегулярных диапазонов ячеек — они могут нарушить визуальную целостность напечатанных линий сетки.
- Всегда выполняйте предварительный просмотр перед печатью, чтобы убедиться: результат будет именно таким, как вы ожидаете.

Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Печать границ вокруг каждой страницы одним щелчком с помощью Kutools для Excel
Для пользователей, которым нужна более профессионально выглядящая граница страницы — особенно в листах со сложным форматированием или когда линий сетки недостаточно, — Kutools для Excel предлагает удобное решение: функцию Добавить границы к разрывам страниц. Этот инструмент позволяет добавить сплошную рамку вокруг каждой печатной страницы активного листа всего одним щелчком — экономя ваше время и обеспечивая безупречный, единообразный вид на всех страницах.
После установки Kutools для Excel выполните следующие действия, чтобы Добавить границы к разрывам страниц:
1. Активируйте лист, на который нужно добавить границы, затем перейдите в Предприятие > Печать > Добавить границы к разрывам страниц. См. снимок экрана:
2. Если появится диалоговое окно с предупреждением, что при продолжении все существующие границы будут удалены, убедитесь, что вы сохранили свою работу или подтвердили возможность перезаписи границ. Нажмите Да, чтобы продолжить:
После применения каждая страница вашего листа будет обведена жирной и чёткой границей, благодаря чему распечатка будет выглядеть аккуратно и легко читаться. Этот метод быстрый и минимизирует ручные усилия.
Советы и примечания:
- При использовании этого параметра все существующие границы будут удалены с текущего листа.
- Если вам важно сохранить определённые границы, сначала создайте резервную копию файла или листа.
- Этот параметр идеально подходит для больших листов, занимающих несколько печатных страниц, которым нужны единообразные и визуально чёткие границы.
Печать границ вокруг каждой страницы с помощью автоматизации макросом VBA
Если вы хотите автоматизировать добавление границы вокруг каждой печатной страницы — особенно для регулярных задач или пользовательских макетов, — воспользуйтесь макросом VBA, который считывает разрывы страниц Excel и рисует контур страницы. Это обеспечивает полный контроль над стилем и толщиной границ без зависимости от надстроек.
Примечания:
- Макрос обводит каждую печатную страницу сплошной рамкой только по внешним краям — сверху, снизу, слева и справа, не затрагивая существующие внутренние границы ячеек.
- Лучше всего работает с хорошо структурированными листами; сложные объединённые или нестандартные области печати могут потребовать небольшой корректировки.
Шаги выполнения:
1. Нажмите Alt + F11, чтобы открыть редактор Visual Basic для приложений. Затем выберите Вставка > Модуль, чтобы добавить новый модуль.
2. Скопируйте и вставьте приведённый ниже код в модуль:
Sub AddBorderToEachPrintablePage()
Dim ws As Worksheet
Dim LastRow As Long, LastCol As Long
Dim StartRow As Long, EndRow As Long
Dim StartCol As Long, EndCol As Long
Dim vRowBreaks As Variant, vColBreaks As Variant
Dim i As Long, j As Long
Dim oldDisp As Boolean
Dim f As Range
Set ws = ActiveSheet
Application.ScreenUpdating = False
Application.EnableEvents = False
' Check if sheet is empty
Set f = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False)
If f Is Nothing Then GoTo CleanUp
LastRow = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
LastCol = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
' Force refresh of page breaks
oldDisp = ws.DisplayPageBreaks
ws.DisplayPageBreaks = True
' Collect horizontal page breaks (add top and bottom bounds)
vRowBreaks = Array(0)
For i = 1 To ws.HPageBreaks.Count
vRowBreaks = ArrayJoin(vRowBreaks, Array(ws.HPageBreaks(i).Location.Row - 1))
Next i
vRowBreaks = ArrayJoin(vRowBreaks, Array(LastRow))
' Collect vertical page breaks (add left and right bounds)
vColBreaks = Array(0)
For j = 1 To ws.VPageBreaks.Count
vColBreaks = ArrayJoin(vColBreaks, Array(ws.VPageBreaks(j).Location.Column - 1))
Next j
vColBreaks = ArrayJoin(vColBreaks, Array(LastCol))
' Draw only outer borders for each printable page
For i = 0 To UBound(vRowBreaks) - 1
StartRow = vRowBreaks(i) + 1
EndRow = vRowBreaks(i + 1)
For j = 0 To UBound(vColBreaks) - 1
StartCol = vColBreaks(j) + 1
EndCol = vColBreaks(j + 1)
With ws.Range(ws.Cells(StartRow, StartCol), ws.Cells(EndRow, EndCol))
With .Borders(xlEdgeTop)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeLeft)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeBottom)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeRight)
.LineStyle = xlContinuous: .Weight = xlThick
End With
End With
Next j
Next i
CleanUp:
ws.DisplayPageBreaks = oldDisp
Application.EnableEvents = True
Application.ScreenUpdating = True
If Not f Is Nothing Then
MsgBox "Borders have been added to each printable page!", vbInformation, "AddBorderToEachPrintablePage"
End If
End Sub
Function ArrayJoin(a As Variant, b As Variant) As Variant
Dim temp() As Variant
Dim alen As Long, blen As Long, k As Long
alen = UBound(a) - LBound(a) + 1
blen = UBound(b) - LBound(b) + 1
ReDim temp(0 To alen + blen - 1)
For k = 0 To alen - 1
temp(k) = a(k)
Next k
For k = 0 To blen - 1
temp(alen + k) = b(k)
Next k
ArrayJoin = temp
End Function
3. Вернитесь в Excel, убедитесь, что целевой лист активен, и запустите макрос с помощью F5(или кнопки)Выполнить). Макрос определит разрывы страниц и нарисует толстую границу вокруг каждого блока печатной страницы.
Советы:
- Настройте стиль и толщину границы, отредактировав четыре секции
xlEdge*(например,).Weight = xlMedium), а цвет — через.Color. - Если задана пользовательская Область печати, Excel будет использовать её при печати — проверьте результат в Предварительном просмотре печати.
- Обязательно сохраните книгу перед запуском макросов. Чтобы использовать её многократно, сохраните файл как книгу с поддержкой макросов ()
.xlsm). - Если содержимое не найдено, макрос безопасно завершит работу, выведя сообщение (это предотвращает ошибки на пустых листах).
Если макрос работает не так, как ожидалось, проверьте наличие объединённых ячеек, скрытых строк или столбцов, а также нестандартных настроек масштабирования (например, «Уместить на 1 страницу в ширину и N страниц в высоту»). Уточните блоки страниц, скорректировав область печати или параметры страницы, и повторно запустите макрос.
Добавить границу вокруг каждой страницы
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек