Print 2 Userforms один за другим - PullRequest
0 голосов
/ 04 марта 2019

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

Application.ScreenUpdating = False
Path = "C:\Users\" & Environ("USERNAME") & "\Desktop\"
Application.SendKeys "(%{1068})"
DoEvents
Workbooks.Add
ActiveSheet.PasteSpecial
ActiveSheet.Range("A1").Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Path & Me.Name & ".pdf"
UserForm1.Hide
ActiveWorkbook.Close False
Application.ScreenUpdating = True

Что если у меня 2 пользовательские формы?

IМне хотелось напечатать userform1, открыть userform2 и сделать из него также pdf?

Я пробовал следующее, однако он захватывает экран до открытия userform2.

Private Sub CommandButton8_Click()
    Application.ScreenUpdating = False
    Path = "C:\Users\" & Environ("USERNAME") & "\Desktop\"
    Application.SendKeys "(%{1068})"
    DoEvents
    Workbooks.Add
    ActiveSheet.PasteSpecial
    ActiveSheet.Range("A1").Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Path & Me.Name & ".pdf"
    UserForm1.Hide
    ActiveWorkbook.Close False
    Application.ScreenUpdating = True

    UserForm2.Show
    Application.ScreenUpdating = False
    Path = "C:\Users\" & Environ("USERNAME") & "\Desktop\"
    Application.SendKeys "(%{1068})"
    DoEvents
    Workbooks.Add
    ActiveSheet.PasteSpecial
    ActiveSheet.Range("A1").Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Path & Me.Name & "2.pdf"
    UserForm1.Hide
    ActiveWorkbook.Close False
    Application.ScreenUpdating = True
End Sub

Или, что еще лучше, какя могу вставить userform1 под ним userform2, а затем из обоих, чтобы сделать 1 длинный PDF?

Спасибо

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