Bonjour à toutes et à tous,
Je souhaiterais imprimer un Userform, j'ai essayé:
Private Sub CommandButton1_Click()
Me.PrintForm
End Sub
mais mon User est grand et il ne contient pas dans une seule page.
Après j'ai essayé avec un copier coller du user sur une feuille afin de pouvoir utiliser le gestionnaire d'impression (voir code ci dessous) mais cela ne fonctionne pas il m'indique une erreur de compilation au niveau de option Explicit "Seul des commentaires peuvent apparaitre avec End Sub, End Fonction ou End propriety" :
Option Explicit
Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Private Sub CommandButton1_Click()
Dim Ws As Worksheet
'Copie d'écran de la forme active
keybd_event vbKeySnapshot, 1, 0&, 0&
DoEvents
'Ajoute une feuille pour coller l'image de la forme
Set Ws = Sheets.Add
Ws.Paste
'impression centrée dans la page
With Ws
.PageSetup.CenterHorizontally = True
.PageSetup.CenterVertically = True
.PrintOut
End With
End Sub
Merci d'avance à ceux qui m'aiderons à résoudre mon problème d'impression.
Je souhaiterais imprimer un Userform, j'ai essayé:
Private Sub CommandButton1_Click()
Me.PrintForm
End Sub
mais mon User est grand et il ne contient pas dans une seule page.
Après j'ai essayé avec un copier coller du user sur une feuille afin de pouvoir utiliser le gestionnaire d'impression (voir code ci dessous) mais cela ne fonctionne pas il m'indique une erreur de compilation au niveau de option Explicit "Seul des commentaires peuvent apparaitre avec End Sub, End Fonction ou End propriety" :
Option Explicit
Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Private Sub CommandButton1_Click()
Dim Ws As Worksheet
'Copie d'écran de la forme active
keybd_event vbKeySnapshot, 1, 0&, 0&
DoEvents
'Ajoute une feuille pour coller l'image de la forme
Set Ws = Sheets.Add
Ws.Paste
'impression centrée dans la page
With Ws
.PageSetup.CenterHorizontally = True
.PageSetup.CenterVertically = True
.PrintOut
End With
End Sub
Merci d'avance à ceux qui m'aiderons à résoudre mon problème d'impression.