Excel 2010/2013 - VBA - Как запустить событие перед предварительным просмотром

Я потратил много времени, пытаясь решить эту проблему, и искал много форумов, но я пока не нашел решения. Может быть, кто-то здесь может найти ответ...

Я хочу запустить некоторый код (изменить несколько ячеек для сдвига условного форматирования, скрыть некоторые строки и т. Д.), Прежде чем пользователь напечатает книгу.

В старые времена это было просто достигнуто путем запуска встроенного события _BeforePrint в excel:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    'Do something
End Sub

В Excel 2010 и выше пользователь может нажать print-preview после нажатия Ctrl-P или перейти в File->Print.

Событие _BeforePrint возникает только после того, как пользователь фактически нажмет кнопку "Печать"!

Поэтому пользователь видит предварительный просмотр листа перед запуском моего макроса. Лист теперь не выглядит хорошо для печати, и пользователь начинает манипулировать листом, потому что он не знает, что лист будет подготовлен к печати после нажатия кнопки "Печать".

Кто-нибудь есть решение этого?

0 ответов

Другие вопросы по тегам