Копирование настроек печати с листа на лист

Предположим, что вы тщательно настроили параметры страницы для красивого вывода на печать таблицы на одном из листов вашей книги Excel. Распечатали его, повертели в руках лист из принтера, порадовались удачному размещению... и поняли, что листов-то у вас, на самом деле, 10 (или 110), т.е. придется повторять все настройки печати еще много-много раз.

На самом деле, все не так плохо :)

Как надо было сделать

Если вам нужно настроить одинаковые параметры страницы сразу для нескольких листов, то достаточно предварительно их выделить, удерживая Ctrl (листы не подряд) или Shift (листы подряд) и потом уже задавать параметры печати на вкладке Разметка страницы (Page Layout). Для наглядности, при выделении сразу нескольких листов в строке заголовка окна Excel будет отображена пометка [Группа]:

page-setup-copy2.png

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

Как скопировать параметры страницы с одного листа на другие

Если вы уже сделали необходимые настройки на одном из листов, то большинство из них можно легко перенести на любые другие выбранные листы книги. Для этого откройте сначала лист-образец, а потом выделите также с Ctrl или Shift другие листы, куда вы хотите скопировать параметры печати. Затем перейдите на вкладку Разметка страницы (Page Layout) и нажмите на стрелку в правом нижнем углу группы Параметры страницы (Page Setup):

page-setup-copy1.png

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

Область печати и сквозные строки-столбцы

Единственное, что не переносится из параметров страницы прошлым способом - это область печати и сквозные строки/столбцы для печати на каждой странице. Их можно скопировать с помощью небольшого макроса. Откройте редактор Visual Basic на вкладке Разработчик - Visual Basic или с помощью сочетания клавиш Alt+F11, вставьте новый пустой модуль через меню Insert - Module и скопируйте туда код:

Sub Copy_PrintArea_And_PrintTitles()
    Dim ws As Worksheet
    'проходим по всем выделенным листам и копируем на них с текущего листа параметры
    For Each ws In ActiveWindow.SelectedSheets
        ws.PageSetup.PrintArea = ActiveSheet.PageSetup.PrintArea        'область печати
        ws.PageSetup.PrintTitleRows = ActiveSheet.PageSetup.PrintTitleRows  'сквозные строки
        ws.PageSetup.PrintTitleColumns = ActiveSheet.PageSetup.PrintTitleColumns    'сквозные столбцы
    Next ws
End Sub

Закройте редактор и вернитесь в Excel. Откройте лист-образец и выделите (с Ctrl или Shift) другие листы. Запустите наш макрос сочетанием клавиш Alt+F8 или с помощью кнопки Макросы на вкладке Разработчик (Developer - Macros)

Ссылки по теме



15.12.2015 02:41:44
Добрый день. А есть возможность макросом скопировать параметры страницы? При чем, условно, из "листа 1" "книги А" в "лист 1" "книги Б"
31.07.2017 00:35:46
Может кто подскажет... Есть Excel-евский файл с ячейками залитыми определенным цветом. Как убрать любую заливку при выводе на печать? В Ворде - знаю. В Excel не могу найти
04.08.2017 10:38:39
Попробуйте галочку Черно-белая печать на вкладке Лист в окне Параметры страницы.
20.06.2019 15:00:52
А не подскажете, как можно перед копированием не вручную, а в макросе установить параметры, а уж потом копировать на все остальные листы?
Наверх