Настройка печати заголовков столбцов в качестве динамических c диапазонов - PullRequest
0 голосов
/ 12 февраля 2020

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

Я могу сделать это вручную, используя созданный мной динамический диапазон c, но мне приходится вручную вводить имя диапазона в настройках макета страницы. Я также пытался использовать макрос для этого, используя свои динамические c диапазоны, но я получаю сообщение об ошибке при запуске следующего скрипта:

Sheets("1. Paste Raw Data").Select
ActiveSheet.PageSetup.PrintTitleColumns = Sheets("1. Paste Raw Data").Range("Print_Side")
ActiveSheet.PageSetup.PrintTitleRows = Sheets("1. Paste Raw Data").Range("Print_Header")

Я также пытался использовать определенный диапазон с помощью Excel (с именем Print_Titles), чтобы изменить эти настройки при печати страниц, но это не позволит мне ввести более одного динамического диапазона c. Print_Titles в настоящее время определяется следующим образом в менеджере имен;

='1. Paste Raw Data'!$B:$B,'1. Paste Raw Data'!$4:$6

Есть ли способ использовать два динамических диапазона c для определения заголовков для строк и столбцов?

1 Ответ

0 голосов
/ 12 февраля 2020

Боюсь, что вы пытаетесь сделать, не принимается в Excel ...

Это позволяет установить PrintTitleRows как Ряды , не как диапазон (как ваш Dynami c диапазон). Excel позволяет повторять только настройку ROWS. В случае использования диапазона (выбранного вручную), Excel расширяет диапазон, чтобы включить полные строки. С точки зрения диапазона, он принимает только диапазон строк.

Если вы настаиваете на использовании вашего динамического диапазона c, вы можете использовать:

ActiveSheet.PageSetup.PrintTitleRows = _
    ActiveSheet.Rows(Names("Print_Header").RefersToRange.Row).Address

, но это будет похоже на то, что вы поцарапаете Ваша левая сторона головы, используя правую руку ...

Вы также можете действовать аналогичным образом для PrintTitleColumns, но вы получите тот же результат, просто используя:

ActiveSheet.PageSetup.PrintTitleColumns = "$A:$A"

Even вы бы вручную попытались установить эти параметры, вы заметили бы, что Excel не позволяет выбирать диапазоны. Он расширяет выбор до всей строки или столбцов в соответствии со спецификой настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...