Скрытие разрывов страниц в Excel - PullRequest
1 голос
/ 19 июня 2009

Исходя из моих предыдущих вопросов :

Я установил ряд флажков, с помощью которых пользователи могут скрывать / отображать диапазоны данных. Это здорово - это работает. Проблема в том, что когда пользователи идут на печать - скрытые данные скрыты, но страницы все еще там, но пустые.

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

Я перепробовал все, чтобы избавиться от пустых областей.

Копирование диапазонов и пересчет разрывов страниц не требуется, поскольку разрывы страниц занимают более 2 минут для довольно небольшого отчета.

Итак, как мне распечатать только те диапазоны, которые не скрыты?

Спасибо, Г.

Ответы [ 2 ]

1 голос
/ 19 июня 2009

Не проверял, но вы можете изменить диапазон печати только на видимые ячейки:

Public Sub SetPrintRangeToVisible(ByRef ws As Excel.Worksheet)
    ws.PageSetup.PrintArea = ws.UsedRange.SpecialCells(xlCellTypeVisible).Address
End Sub
0 голосов
/ 06 ноября 2014

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

Полагаю, вы сняли флажок «Печать объекта» во всех флажках. И эта область кажется пустой, когда вы печатаете лист. Если это так, читайте дальше:

Я предлагаю написать простой макрос, который скрывает строки, содержащие флажки. Установите для свойства visible флажков значение false. Распечатайте лист, а затем верните все обратно в исходное состояние.

В качестве альтернативы, вы можете просто выбрать строки над флажками, затем всю область под флажками, а затем установить это как PrintArea. Это должно решить вашу проблему.

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

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