Цвет фона верхнего и нижнего колонтитула (Microsoft Excel)
Леонид спросил, есть ли способ установить цвет фона для верхнего или нижнего колонтитула страницы. Ответ прост: в Excel нет такой возможности. Однако есть несколько способов обойти эту проблему. Например, если вы используете Excel 2002 или Excel 2003, вы можете добавить графику в верхний или нижний колонтитул. С помощью правильного рисунка вы можете создать впечатление, что верхний и нижний колонтитулы содержат цвет, хотя на самом деле цвет содержит изображение.
Другой вариант — сделать «фальшивые» верхние и нижние колонтитулы. Если все, что вам нужно, это заголовок другого цвета, то вы можете использовать первую пару строк рабочего листа в качестве заголовка. Эти строки вы можете отформатировать по своему усмотрению, включая настройку цвета строк. Затем вы можете указать Excel повторять эти строки в верхней части каждой страницы распечатки (используя для этого диалоговое окно «Параметры страницы»).
Повторение строк для области нижнего колонтитула становится более проблематичным, поскольку Excel не включает функцию, которая позволяет вам повторять строки в нижней части каждой страницы. Создание макроса для добавления строк для верхнего и нижнего колонтитулов возможно, но это приведет к изменению вашего рабочего листа — необходимо добавить строки для поддельных верхних и нижних колонтитулов.
В качестве примера рассмотрим следующий макрос. Предполагается, что вы хотите, чтобы слева и справа от распечатки были поля в один дюйм, и что вы хотите печатать только 46 строк на странице. Он устанавливает поля, а затем проходит по листу, при необходимости добавляя фальшивые строки верхнего и нижнего колонтитула. (Поскольку макрос корректирует дизайн рабочего листа, убедитесь, что вы сохранили рабочий лист перед запуском макроса.)
Sub FakeHeaderFooter() Dim LHeader As String Dim CHeader As String Dim LFooter As String Dim CFooter As String Dim CBottom As Integer Dim CRow As Integer Dim PageSize As Integer LHeader = "Top Left" CHeader = "Top Center" LFooter = "Bottom Left" CFooter = "Bottom Center" PageSize = 46 With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" .PrintArea = "" .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "" .RightFooter = "" .LeftMargin = Application.InchesToPoints(1) .RightMargin = Application.InchesToPoints(1) .TopMargin = Application.InchesToPoints(0) .BottomMargin = Application.InchesToPoints(0) .HeaderMargin = Application.InchesToPoints(0) .FooterMargin = Application.InchesToPoints(0) .PrintHeadings = False .Orientation = xlPortrait End With CBottom = Range("A16000").End(xlUp).Row CRow = 1 Do Until CRow > CBottom If CRow Mod PageSize = 1 Then Rows(CRow).Select Selection.Insert Shift:=xlDown Selection.Insert Shift:=xlDown CBottom = CBottom + 2 Cells(CRow, 1).Value = LHeader Cells(CRow, 4).Value = CHeader Range(Cells(CRow, 1), _ Cells(CRow, 8)).Interior.ColorIndex = 34 Range(Cells(CRow + 1, 1), _ Cells(CRow + 1, 8)).Interior.ColorIndex = xlNone CRow = CRow + 2 ElseIf CRow Mod PageSize = PageSize - 1 Then Rows(CRow).Select Selection.Insert Shift:=xlDown Selection.Insert Shift:=xlDown CBottom = CBottom + 2 Cells(CRow + 1, 1).Value = LFooter Cells(CRow + 1, 4).Value = CFooter Range(Cells(CRow + 1, 1), _ Cells(CRow + 1, 8)).Interior.ColorIndex = 34 CRow = CRow + 2 Else CRow = CRow + 1 End If Loop LastPageNumber = PageNumber + 1 LastRow = LastPageNumber * PageSize If CBottom <> LastRow Then Range(Cells(LastRow, 1), _ Cells(LastRow, 8)).Interior.ColorIndex = 34 Cells(LastRow, 1).Value = LFooter Cells(LastRow, 4).Value = CFooter End If CBottom = Range("A16000").End(xlUp).Row CRow = 2 Do Until CRow > CBottom If CRow Mod PageSize = 1 Then Cells(CRow, 1).PageBreak = xlManual End If CRow = CRow + 1 Loop End Sub
Чтобы изменить количество строк на странице, просто измените значение, присвоенное переменной PageSize. Вы также можете изменить то, что отображается в области «заголовок» и «нижний колонтитул», изменив то, что присвоено переменным LHeader, CHeader, LFooter и CFooter.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (3056) применим к Microsoft Excel 97, 2000, 2002 и 2003.