Excel 2007 vba Application.Dialogs (xlDialogPrint). Показывает сбой, если пользователь выбирает предварительный просмотр печати - PullRequest
1 голос
/ 05 августа 2010

В Excel 2007 есть кнопка, которая запускает макрос, который выбирает несколько листов из многих и отправляет в Application.Dialogs (xlDialogPrint) .Show.В рамках выбора нескольких листов запускаются другие макросы, такие как показ определенных строк, защита паролем и снятие защиты и т. Д.

Печатается и отменяется нормально, за исключением случаев, когда пользователи нажимают кнопку «Предварительный просмотр» в этомдиалоговое окно принтера.Он показывает диалоговое окно принтера нормально, но независимо от того, нажали ли они на печать или закрылись, он падает.

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

Любой способ учесть или захватить содержимое диалогового окна предварительного просмотра, когда предварительный просмотр печати запускается через диалоговое окно принтера из Application.Dialogs (xlDialogPrint) .Show?

Я попытался изменить переданные параметры, такие как

Application.Dialogs(xlDialogPrint).Show ,,,,,False
Application.Dialogs(xlDialogPrint).Show Arg6:=False

Но они не работают;Я читал, что вы все равно не можете изменить диалог.

(надеюсь, это понятно)

1 Ответ

0 голосов
/ 05 августа 2010

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

Private Sub CommandButton1_Click()

    Dim vSheets() As Variant

    vSheets = Array("Sheet1", "Sheet2")
    ActiveWorkbook.Sheets(vSheets).Select 'sheets need to be selected
    ActiveWorkbook.PrintOut preview:=True 'brings up print preview
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...